私はhandles_sortable_columnsを使用してRails3の列を並べ替えていますが、結合を使用する以外に別のテーブルの列で並べ替える方法があるかどうか疑問に思っていました。
別のテーブルの列の名前をルックアップした列があります。
つまり、cities.country_idを列として使用し、ビューテンプレートで次のようにします。
@cities.each do |city|
city.country.name
名前を表示します。
この列で並べ替えることができますが、countries.name
ではありませんcities.country_id
。
これがgemまたは他の簡単な方法で可能かどうか誰かが知っていますか?もしそうなら、どのように?
私が考えることができる唯一のことは、コントローラーでIFステートメントを実行し、国による並べ替えをキャッチしてから、そのための結合を使用して別のクエリを実行することですが、それは醜くエラーが発生しやすく、よりエレガントなものを望んでいました。
ありがとう。