我有一個與acts_as_list集成的模型。但是,默認情況下,創建的新項目將被添加到列表的結尾。有沒有一種默認的方式來添加新項目開始?如何讓Rails的acts_as_list將新項目添加到列表的開頭?
謝謝!
我有一個與acts_as_list集成的模型。但是,默認情況下,創建的新項目將被添加到列表的結尾。有沒有一種默認的方式來添加新項目開始?如何讓Rails的acts_as_list將新項目添加到列表的開頭?
謝謝!
您可以更改列表項目的顯示方式。顛倒todo_items
的順序有效地完成了這一點。
has_many :todo_items, :order => "position ASC"
否則,也許你可以在項目手動在after_create
設置position
列。
嘗試使用add_new_at
配置選項:
acts_as_list scope: :todo, add_new_at: :top
這是肯定的答案。 – Miguelgraz
這是最好的答案。我刪除了關於列默認方法的答案,因爲它不再有效。 –
@yuval你應該接受這個答案,因爲它仍然有效,並且是官方的方法。 –
這可能的假設下,打破了OP具有某種阻力,並在他們的應用降重新排序。這將嘗試根據它們在ID數組中的索引位置對所有項目進行重新排序。只是要注意的事情。 –