我有公司,每個公司都有很多類別 我想跟蹤每個公司的類別數量,列表樣式,並增加/減少添加/刪除,而按位置列排序。因此,公司內的每個類別都有一個Position屬性。Rails中同一模型的不同值
|pos| name
1 - cat1
2 - cat2
3 - cat3
所以,當我創建一個公司,我已經有2個默認類別(之前創建,等等),並在我的類別I類有:
@@total_positions = 2
有關分類操作位置創建我使用:
before_create :add_position_to_new
before_destroy :decrement_positions
def add_position_to_new
self.position = @@total_positions + 1
@@total_positions = self.position
end
def decrement_positions
@@total_positions = @@total_positions - 1
end
這一切工作正常,但我在應用程序中的所有類別都有一個共同的位置計數器。我希望每個公司都有自己的@@ total_position計數器,用於他們的類別。請將我指向正確的方向。
PS:在我使用acts_as_list gem之前,它工作得很好,但後來我在切換到Postgres時遇到了一些困難,並決定從頭編寫我自己的方法。這樣你也學到更多,對吧? ;)
真棒,謝謝! –