MongoDB / Mongoid:按引用文档的ID排序

时间:2011-01-07 06:44:23

标签: mongodb sorting mongoid

我在Mongoid中有2个课程:主题&帖子。主题引用了很多帖子。

我想通过帖子的ID降序来排序主题,以便最新的帖子位于顶部。

@topics = Topic.order_by(:last_message.created_at.desc)

这显然不起作用。

有办法吗?

3 个答案:

答案 0 :(得分:2)

更好的方法是在主题中创建额外的字段'LastMessageCreated',并在每个帖子后保存发布日期,然后按'LastMessageCreated'排序主题。

答案 1 :(得分:0)

这个怎么样?

@topics = Topic.desc('posts.created_at')

或者

@topics = Topic.order_by('posts.created_at',:desc)

答案 2 :(得分:0)

Topic.all(sort: [[:created_at, :desc]])