忘れやすいので、 accepts_nested_attributes_for の使い方についてメモ。
Company に複数の Employees がいるとき。
class Company
has_many :employees
accepts_nested_attributes_for :employees
end
class Employee
belongs_to :company
end
View で、下記のように fields_for を使う。Company作成時に、1人の Employee を同時に作る時の例
< %= form_for @company do |f| %>
name < %= f.text_field :name %>
< %= f.fields_for :employees do |employee_form| %>
employees name %lt;%= employee_form.text_field :name %>
< % end %>
< %= f.submit "Create" %>
< % end %>
コントローラでは、特に何もしなくていいです。
def create
@company = Company.create!(params[:company])
redirect_to @company
end