2017-04-04 6 views
0

を選択すると、ユーザは複数選択し、作品に複数の項目を選択することができますRailsは...代わりに、マルチ私は、マルチ選択ビューで作業している親子関係を持つ

= f.collection_select :item_ids, Item.order("name ASC").all, :id, :name, {}, {:multiple => true, class: "form-control"} 

をtext_fieldsを使用しています。

しかし、ユーザーを3つのアイテムに制限したいと思っています。それらを先読みスタイルのテキストフィールドに入力する必要があります。

= f.text_field "item_ids[]", {class: "form-control item-autocomplete", autocomplete: "off"} 
= f.text_field "item_ids[]", {class: "form-control item-autocomplete", autocomplete: "off"} 
= f.text_field "item_ids[]", {class: "form-control item-autocomplete", autocomplete: "off"} 

私は、ビューを交換し、まだそれが[] items_ids前に行ったように、入力を受け入れるようにコントローラを取得する方法を考え出すいくつかの問題を抱えています。

私はこれがまっすぐ進むと思いますが、それを理解できないようです。

ご協力いただければ幸いです。

答えて

0

最終的に私は自分の解決策を誇張していたが、誇りに思っていなかったが、専門家が私の質問に答えなかったので、まだ問題を解決する必要があったので、

問題を解決するために、私は手動で名前プロファイル[item_ids] []を使用して配列にプッシュする入力を作成しましたが、IDを渡す代わりに文字列を渡します。

次に、コントローラでアイテム検索を実行するメソッドを作成してIDの配列を作成し、新しい配列でparamハッシュ値をスワップアウトしました。そして、ホワイトリストのparamsを維持するために私はホワイトリストのparamsを渡すと、新しいハッシュを返すこと、私は強く型付けされた言語でこれをやったことがないだろう

if @profile.update(convert_item_names_to_ids(profile_params)) 

そうのような新しい価値を持つitem_ids ...と。

関連する問題