本文主要介绍django ObjectDoesNotExist和DoesNotExist的用法,有很好的参考价值。希望对大家有帮助。来和边肖一起看看吧。
比如更容易理解。
例1:
从django.core.exceptions导入对象不存在
尝试:
pe=Plant.objects.get(id=12873)
except ObjectDoesNotExist:
打印' uuuu '
uuuu
#我随机找了一个id=12873的对象进行查询。当然数据库里没有这个id,所以我可以看到结果是正常打印的。
例2:
尝试:
pe=Plant.objects.get(id=12873)
除了植物。不存在:
打印' rrr '
恢复翻正反射
#结果会如期打印出来,所以请查看模型的属性
总监(工厂)
['不存在',
已返回多个对象,
__class__ ',
__delattr__ ',
__dict__ ',
__doc__ ',
.
# DoesNotExist就在其中。
总结:ObjectDoesNotExist和DoesNotExist表达的意思一样,只是写法不同。一个需要导入,一个是模型的属性。如何使用取决于每个人的个人习惯。
补充知识:Django入门:DoesNotExist: User matching query does not exist.
我们来说说导致问题的具体代码。
User.objects.filter(用户名='sss ')。获取()。用户名
在py脚本中使用上述代码判断username是否等于“sss”时,如果username的值等于“sss”,则返回一个正确的结果,但如果搜索中没有“sss”,则返回一个类似标题的错误(不存在:用户匹配查询不存在。),程序将停止运行。终止意味着下面的代码不再执行,所以你得不到想要的结果。
这个问题可以引申为:如何解决类似的问题;
您可以使用try…except…语句来包含可能导致程序终止的语句,具体如下:
尝试:
User.objects.filter(用户名=用户名)。获取()。用户名
除了:
及格
附:try…except…语句是一种用于异常处理的用法,即try…except…可用于在所有可能导致程序异常的点时引导程序。
上述django ObjectDoesNotExist和DoesNotExist的用法是边肖分享的全部内容。希望给大家一个参考,多多支持我们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。