我有一个note
模型。 user
有很多notes
。目前,notes
按date
排序,然后按created_at
排序。
我想让用户能够自己订购笔记(在一个日期内)。
例如,如果这是当前显示的方式:
Date1
note1,note2,note3
Date2
note4
Date3
note5,note6
用户可以按如下方式重新排序:
Date1
note3,note1,note2
Date2
note4
Date3
note6,note5
在Rails中实现此功能的最有效方法是什么?我应该使用链表吗?或其他什么?
我正在使用Rails 3.0.1和Ruby 1.9.2
答案 0 :(得分:0)
我的偏好是直接在模型中执行此操作并让数据库处理排序,因此我通常会添加order_by字段。当用户重新排序列表时,代码只需调整order_by字段以反映新的排序。
答案 1 :(得分:0)
我认为我会给它一个位置属性。因此,最初:
note1 - > 1 note2 - > 2 note3 - > 3 note4 - > 4 note5 - > 5
如果我想让note5获得2的位置,我只需要交换位置属性。