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的用法是边肖分享的全部内容。希望给大家一个参考,多多支持我们。

django ObjectDoesNotExist 和 DoesNotExist的用法