您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

获取对象时如何处理“不存在匹配查询”

获取对象时如何处理“不存在匹配查询”

这取决于你不存在时要执行的操作。

那里get_object_or_404

在给定的模型管理器上调用get(),但是它引发Http404而不是模型的DidNotExist异常。

get_object_or_404(World, ID=personID)

除了你当前执行的代码外,这与try非常接近。

否则有get_or_create:

personalProfile, created = World.objects.get_or_create(ID=personID)

虽然,如果你选择继续使用当前的方法,则至少要确保将except定位到正确的错误,然后根据需要进行一些处理

try:
   personalProfile = World.objects.get(ID=personID)
except MyModel.DoesNotExist:
    raise Http404("No MyModel matches the given query.")

上面的try / except句柄类似于在文档中找到的get_object_or_404

其他 2022/1/1 18:18:57 有450人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶