,,django ObjectDoesNotExist 和 DoesNotExist的用法

,,django ObjectDoesNotExist 和 DoesNotExist的用法

本文主要介绍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的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: