【发布时间】:2014-05-11 13:00:14
【问题描述】:
我在做:
MyModel.objects.filter(name=givenname).latest('added')
但我得到一个查询集:
[<MyModel: object title>]
但我只需要对象,如何使用 filter() 只获取对象而不获取查询集?
【问题讨论】:
标签: python django django-queryset
我在做:
MyModel.objects.filter(name=givenname).latest('added')
但我得到一个查询集:
[<MyModel: object title>]
但我只需要对象,如何使用 filter() 只获取对象而不获取查询集?
【问题讨论】:
标签: python django django-queryset
不要使用filter,而是使用get(或另外)
在你的情况下:
MyModel.objects.filter(name=givenname).latest('added')
或者:
MyModel.objects.filter(name=givenname).get()
【讨论】:
latest() 应该已经为您提供了一个项目。你的结果没有任何意义,你能发布你的模型和经理吗?
latest() 仅在您不使用 filter() 时才给您反对 - 我说的对吗?
latest() 方法。
.get() 给你一个对象并假设你的查询只给出一个结果。 .latest() 为您提供一个对象,根据您排序的字段,该对象是最新的。