我想获取最新的django模型对象,但似乎无法成功。django - 获取带有过滤器的最新记录
既不
obj= Model.objects.filter(testfield=12).latest()
也不
obj= Model.objects.latest().filter(testfield=12)
工作。
请大家帮忙。
我想获取最新的django模型对象,但似乎无法成功。django - 获取带有过滤器的最新记录
既不
obj= Model.objects.filter(testfield=12).latest()
也不
obj= Model.objects.latest().filter(testfield=12)
工作。
请大家帮忙。
请参阅该文档从Django的: https://docs.djangoproject.com/en/dev/ref/models/querysets/#latest
你需要指定一个字段中最新的()。例如。
obj= Model.objects.filter(testfield=12).latest('testfield')
或者,如果你的模型的元指定get_latest_by,您可以在field_name
参数离开关闭以earliest() or latest()
。 Django默认使用get_latest_by
中指定的字段。
“testfield”必须是日期字段? – 2015-10-29 10:18:12
obj= Model.objects.filter(testfield=12).order_by('-id')[:1]
是正确的解决方案
你试过:'OBJ =型号.objects.filter(testfield = 12).order_by(' - id')[:1]' – catherine 2013-03-28 06:41:03
@c atherine,工作就像一个魅力! :d。你想写这个答案,所以我可以检查它? – doniyor 2013-03-28 06:44:50
好的,谢谢你... – catherine 2013-03-28 06:48:17