2012-02-27 13 views
0

私は旧式のバージョンのレール(2.2)を使用しています。Ruby On Rails - パラメータに依存するcollection_selectのデフォルトオプションを表示

私は検索フィルタを持つページを持っています。オプションをフィルタリングすると、ドロップダウンボックスが選択したフィルタにデフォルト設定されます。フィルタはURLのパラメータとして格納されています。すなわちフィルタ[特集+ヘッダー] =テスト&フィルタ[in4User] = 1つの&フィルタ[モジュール] =

3は、私が検索何:

http://i.stack.imgur.com/r804l.png

は、私が現在見何ページのロード時(あなたが見ることができるように、)テキストボックスが再移入されますが、ドロップダウンはありません。

http://i.stack.imgur.com/G83X8.png

私がしたいです参照ページのロード時:

ます。http:// [remove_this_space]私が使用していますcollection_selectの

例i.stack.imgur.com/r804l.png:

<%= collection_select(:filter, "Client", Client.find(:all, :conditions => ['status = 0']), :ClientID, :Name, :include_blank => true) %> 

答えて

2

必要に何をやる選びコレクションに:selectedオプションを渡し、その値に応じて適切なPARAMを渡し、そのようなものです:クライアントを選択する必要があり

<%= collection_select(:filter, "Client", Client.find(:all, :conditions => ['status = 0']), :ClientID, :Name, :include_blank => true, :selected => params[:filter]) %> 

、と仮定クライアントはコレクションに含まれています。

+0

残念ながら、:私には選択できません。これは私がform_tagであり、form_forではないためである可能性がありますか? –

+0

いいえ、おそらくあなたのparams [:filter]にコレクションの選択肢の1つが含まれている必要があります。 – TheDelChop

関連する問題