在django中,如果我使用MongoEngine,如何获得查询集的最新实例
正常情况下我们会
Users.objects.latest('id')但是我不能在latest中使用MongoEngine。
;)。我被困住了。
我在这里没有找到解决办法。但我已经实现了。你对下面的看法是什么?
Users.objects.all().order_by('-id').limit(1)[0] 这将返回最新的实例。
并通过将其提交给蒙古国来解决这个问题。
https://github.com/anishmenon/mongoengine/
您可以安装这个并使用
Users.objects.latest('id')发布于 2014-04-02 10:32:09
你可以这样做:
Users.objects.order_by('-id').first()发布于 2018-10-16 09:23:54
罗斯的回答已经足够了。
但是,如果您确实需要一个latest(),那么实现一个自定义QuerySet就可以做到这一点。
“装饰”方式:
class Users(Document):
username = StringField()
@queryset_manager
def latest(doc_cls, queryset):
return queryset.order_by('-id').first()“元”方式:
class UsersQuerySet(QuerySet):
def latest(self):
return self.order_by('-id').first()
class Users(Document):
meta = {'queryset_class': UsersQuerySet}现在你可以:
Users.objects.latest()
# or
Users.latest()https://stackoverflow.com/questions/22531136
复制相似问题