2011-01-28

ActiveScaffoldでセレクトボックスのソート順を変える

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
ActiveScaffoldでは、モデルでbelongs_toで指定しているモデルの内容を表示することができます。
データを変更するときもセレクトボックスを使うように指定すれば、モデルの内容のセレクトボックスを勝手に作ってくれます。

具体的な使い方は、
http://slap.s101.xrea.com/diary/log/eid465.html
が参考になります。

しかし、セレクトボックスの中身はデータの昇順になってしまっています。降順にするとか違うカラムを利用した順番でソートの順番を変更するには、以下のサイトの手段をとる必要があります。
http://grayhole.blogspot.com/2010/05/activescaffold-select-sort.html

ActiveScaffoldに手を入れないとダメなのでした。

ちなみにbelongs_toのモデルとは関係なく、普通にセレクトボックスを作成するには表示する内容をハッシュを渡してやればよいのですが順番が保障されません。
順番にこだわりたい場合は、
ActiveSupport::OrderedHash
を使う必要があります。


0 件のコメント: