2
我有Parent
和Child
模型。父has_many :children
,应按正确顺序保存在数据库中。我决定把它保存为一个与字段next_id
相关的链表。我知道,那里有acts_as_list
宝石,但它节省了position
字段。它不是更重的SQL解决方案吗?Ruby中的链接列表
不过,你有什么想法,我该如何设计它?我想保存SRP,所以所有使用列表的操作应该在Child
模型中。 Parent
应该已经订购children
。
那么在这样的列表中“移动”操作呢?它不重吗? – everm1nd
它被实现为'UPDATE list_items SET position = position + 1 WHERE parent_id =? AND位置>?'来创建一个洞,将移动的项目重新编号,这并不像您想象的那样糟糕。链接列表的插入速度更快,但如果您想要检索整个列表,则基本上已被清理。 – tadman
感谢您的咨询! – everm1nd