2012-06-24 14 views
20

コレクション選択をまとめています。Rails collection_selectデフォルトオプション?

<%= collection_select :PriceRange, "7", PriceRange.where('value > 0'), :value, :name %> 

私が表示された項目を変更し、フォームのその部分、これは独立しており、ユーザー設定のいずれかに依存しない、7のIDでPriceRangeされるデフォルトの選択を取得しようとしていますそれらの価格帯によってページ上に表示されます。

* * * UPDATED EFFORTS * * * 

Iビューを処理するコントローラに

@price_higher = PriceRange.find(7) 

を加え、そしてcollection_select内部

, {:selected => @price_higher.value} 

を加えました。それは、collection_selectの中ですべてをやっているあまり複雑でない方法を探していましたが、そのトリックをするようです。

答えて

33

:selectedオプションを追加します。

例:私はそれを避けていた理由は、値が道を変更することがあり

<%= collection_select :PriceRange, "7", PriceRange.where('value > 0'), :value, :name, {:selected => "whatever"} %> 
+0

を、そして:あなたのケースではApiDock

collection_select(:post, :author_id, Author.all, :id, :name_with_initial, {:selected => "whatever_value"}) 

例から取りました私は将来的に更新する必要がある余分なコードを制限しようとしています。また、そのアイテムがデータベースで変更され、ビュー上で更新されないと何かが壊れるのを避けるべきです。 – mediarts

+2

そう...あなたが望むものをより詳細に説明したいと思う。 – Nobita

関連する問題