我想检查一个对象是否存在——如果它不存在我想继续执行该函数而不返回 404 错误。我怎样才能做到这一点?
def check(request):
if request.is_ajax():
# print('Working') #prints
id = request.POST.get('id')
post = Post.objects.get(hash=id)
obj = get_object_or_404(Post, post=post)
if obj:
# do stuff
else:
#do something else
以上代码返回:
Not Found: /check/
[22/Jul/2018 01:15:03] "POST /check/ HTTP/1.1" 404 1729
请您参考如下方法:
只需捕获 Post.DoesNotExist 异常并在异常处理程序中执行其他操作:
def check(request):
if request.is_ajax():
id = request.POST.get('id')
try:
post = Post.objects.get(hash=id)
# do stuff
except Post.DoesNotExist:
# do something else
