0
我需要根據他們的狀態對他們進行排序,而不管他們是否被選中。Formtastic Collection Sorting
我的設置看起來類似於以下
# user.rb
class User
has_and_belongs_to_many :colours
end
'
# colour.rb
class Colour
has_and_belongs_to_many :users
scope :ordered_for, lambda { |user|
all.sort_by { |s| include? user ? 1 : 0 }
}
end
'
# _form.html.haml
= semantic_form_for(@user) do |f|
= f.input :colours, :as => :check_boxes, :collection => Colour.ordered_for(current_user)
ordered_for
返回一個良好有序陣列。事實上,formtastic事後破壞了這個命令,並且通過id
對顏色進行排序。
什麼是更好的方法來取代這種行爲?有沒有更聰明的方法通過選擇來實現訂單?
在此先感謝!
這就是我做OO – pex