4
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

nested_form_fieldsを使って入力フォーム数を可変にする

Posted at

has_manyで関連しているモデルをfields_forで作成する際に、
フォームの数を可変にしたくなりますよね。
例えば在庫モデルにいくつもの商品を登録したい時とか。

最初は追加ボタンを押した回数だけループ回して、fields_forを作成したりしてたんですが、
便利なgemがあったので備忘録として残しておきます。

Gemfile
gem 'nested_form_fields'

上記を追加して「bundle update」を実行

application.js
//= require nested_form_fields

jsファイルには上記を追加しておきます。

これで下記のようにviewでfields_forの代わりにnested_fields_forが使えるようになります。
フィールドを追加する為のadd_nested_fields_linkや、
削除する為のremove_nested_fields_linkも用意してあるので、
かなり簡単に可変なフィールドを作ることができました。

具体的な使い方は下記を参考にさせて頂きました。
https://www.virment.com/add_and_remove_rails_nested_form_dynamically/

4
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?