我在Mongoid中有2个类:主题&后。主题引用了许多帖子。MongoDB/Mongoid:按引用文档ID排序
我想通过帖子的ID降序排列主题,以便最近的帖子位于顶部。
@topics = Topic.order_by(:last_message.created_at.desc)
这显然不起作用。
有没有办法做到这一点?
我在Mongoid中有2个类:主题&后。主题引用了许多帖子。MongoDB/Mongoid:按引用文档ID排序
我想通过帖子的ID降序排列主题,以便最近的帖子位于顶部。
@topics = Topic.order_by(:last_message.created_at.desc)
这显然不起作用。
有没有办法做到这一点?
更好的方法是在主题中创建额外字段'LastMessageCreated'并在每个帖子后保存发布日期,并通过'LastMessageCreated'排序主题。
这个怎么样?
@topics = Topic.desc('posts.created_at')
或者
@topics = Topic.order_by('posts.created_at',:desc)
Topic.all(sort: [[:created_at, :desc]])
呀,我想到了这一点。 – Alex 2011-01-07 07:56:43
通常的做法是有额外的字段进行过滤和排序以及搜索。 – 2011-01-07 08:00:33