python - 如何捕获 Django 中的 MultipleObjectsReturned 错误

标签 python django exception

是否有可能在 Django 中捕获 MultipleObjectsReturned 错误?

我做了一个搜索查询,如果有多个对象,我希望列表中的第一个将被采用,所以我尝试了这个:

try:
    Location.objects.get(name='Paul')
except MultipleObjectsReturned:
    Location.objects.get(name='Paul')[0]

但是,它存在于 doc 中虽然

global variable MultipleObjectsReturned does not exist

最佳答案

使用过滤器:

Location.objects.filter(name='Paul').first()

或者导入异常:

from django.core.exceptions import MultipleObjectsReturned
...
try:
    Location.objects.get(name='Paul')
except MultipleObjectsReturned:
    Location.objects.filter(name='Paul').first()

关于python - 如何捕获 Django 中的 MultipleObjectsReturned 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32172934/

相关文章:

c# - 空捕获 block

python - 删除数字及其后面的任何特殊字符或字母(来自邮政地址)

python - 关于使用 Ropevim 的任何指示?它是一个可用的库吗?

python - webapp2:自动重新加载代码更改

django忽略admin.py

android - 如何按字符串删除 sqlite 表行条目?

c# - 链式异常堆栈示例

python - 用python进行傅立叶变换

python - nosetests --cover-html 不生成 html 文档

django - 两个不同项目的多个 supervisor.conf