如何在mongoengine中的查询集上按objectId的时间戳(降序)排序?

时间:2019-06-06 18:50:27

标签: python mongodb mongoengine

笼子说,我有一个收藏。笼子具有以下字段: _id(保存到数据库时生成),cage_type(字符串类型字段)

我正在执行查询。我想按对象ID包含的时间戳按降序排列。

通常,我们可以通过以下方式访问时间戳: YourObject.id.generation_time

但是我似乎无法在order_by查询中弄清楚。在文档中也没有提及。

我尝试过:

query = Cage.objects.order_by('-_id.generation_time').first()
query = Cage.objects.order_by('-id.generation_time').first()
query = Cage.objects.order_by('-_id.getTimestamp()').first()

但没有一个解决方案。

非常感谢您的帮助。谢谢您的时间!

1 个答案:

答案 0 :(得分:0)

您可以直接按ObjectId进行排序,因为它封装了创建时间戳记,所以它将按创建日期时间自然排序。

query = Cage.objects.order_by('-id').first()