ActiveRecord にデフォルトの並び順が指定できるようになった。
class Hoge < ActiveRecord::Base
default_scope :order => 'id';
end
だから、activescaffold における form_ui = :select を指定した場合にアルファベット順でソートする挙動は、もう要らない。
helpers/association_helpers.rb を修正する。
# returns options for the given association as a collection of [id, label] pairs intended for the +options_for_select+ helper.
def options_for_association(association, include_all = false)
available_records = association_options_find(association, include_all ? nil : options_for_association_conditions(association))
available_records ||= []
# available_records.sort{|a,b| a.to_label <=> b.to_label}.collect { |model| [ model.to_label, model.id ] }
# already sorted by sql. so disable sorting.
available_records.collect { |model| [ model.to_label, model.id ] }
end
0 件のコメント:
コメントを投稿