我使用acts_as_list生成時隙號的書:從得到在到結果集防止默認範圍被施加到acts_as_list
acts_as_list :scope => :book_id, :column => :slot
和具有防止刪除的默認範圍(軟刪除)的書:
default_scope where(:is_active => true)
我想阻止越來越應用於acts_as_list聲明默認的範圍,因爲如果有人刪除了最後一本書,並創建一個新的,他們得到相同的插槽編號(因爲當它提取最後一個插槽編號時,默認的作用域被應用並且它不會被刪除的條目)。我知道unscoped
,但我如何將它與acts_as_list一起使用?
我正在使用Rails 3.0.11。
您在模型中定義它。它不是一個有名望的範圍。你可以看看這裏的文檔:https://github.com/swanandp/acts_as_list –
當定義它時你可以用'unscoped'作爲前綴'acts_as_list' - acts_as_list只是一個在類上調用的方法,所以是'unscoped',所以鏈接它們沒什麼問題:'unscoped.acts_as_list' – MrTheWalrus
感謝您的指針。看起來版本0.1.4中有一些錯誤,因此它不起作用。它似乎已被修復爲0.1.8:https://github.com/rails/acts_as_list/pull/11 –