我有一个模型CardSet has_many :cards, :order => "cards.order"
。当我更新some_card_set.cards = cards_in_a_particular_order
,然后更新some_card_set.save
时,我希望some_card_set.cards
下次使用我输入的相同顺序的卡片返回。我怎样才能实现这一目标?
答案 0 :(得分:1)
答案 1 :(得分:0)
假设表格设计类似于
cards {
id INT PRIMARY KEY,
value VARCHAR(5),
suite VARCHAR(10)
}
card_sets {
id INT PRIMARY KEY,
name VARCHAR(30),
}
然后我会有一个类似的连接表:
card_set_orders {
card_set_id INT,
card_id INT,
order_index INT
}
您必须更改has has以反映连接语法。然后你可以为集合设置一个'on load'函数'order'。所以你需要: 1)新的迁移 2)新的activerecord模型 3)您可以在查找或手动调用的排序方法 4)更新了has_many