Django的filter()和get()方法之间的区别

之间有什么区别

mymodel=model.objects.get(name='pol')

mymodel=model.objects.filter(name='pol')

回答:

在Django的查询集文档都对这个很清楚的:

get(**kwargs)¶

返回与给定查找参数匹配的对象,该参数应采用“字段查找”中所述的格式。

如果找到多个对象,则get()会引发MultipleObjectsReturned。MultipleObjectsReturned异常是模型类的属性。

如果找不到给定参数的对象,则get()会引发DidNotExist异常。此异常也是模型类的属性。

filter(**kwargs)

返回一个新的QuerySet,其中包含与给定查找参数匹配的对象。

基本上get()在要获取单个唯一对象以及filter()要获取与查找参数匹配的所有对象时使用。

以上是 Django的filter()和get()方法之间的区别 的全部内容, 来源链接: utcz.com/qa/399544.html

回到顶部