Сохранение нескольких записей в одной форме в Rails 4
У меня есть модель под названиемсемья, которыйпринадлежит пользователю Я хочу, чтобы пользователь мог добавить несколько членов семьи в одной форме, которая находится в /views/families/new.html.erb
РЕДАКТИРОВАТЬ: Извините, я должен был предоставить более подробный код ранее после небольшого изменения в коде
В ресурсах rout.rb: семьи РЕДАКТИРОВАТЬ: ВUser.rb
class User < ActiveRecord::Base
has_many :families
end
РЕДАКТИРОВАТЬ: ВFamily.rb
class Family < ActiveRecord::Base
belongs_to :user
end
В Семейном Контроллере
def new
end
РЕДАКТИРОВАТЬ: я изменил форму таким образом:
<%= form_tag(controller: "families") do %>
<% i = 0 %>
<% 3.times do %>
<br>
<h2>Family Member #<%= i+1 %> : </h2>
<br>
<%= fields_for("family[#{i}]") do |f| %>
<%= f.text_field :name, class: "form-control" , placeholder: "Name"%> <br>
<%= f.text_field :relationship, class: "form-control" , placeholder: "Relationship" %> <br>
<%= f.date_field :dob, class: "form-control" %> <br>
<%= f.text_field :blood_group, class: "form-control", placeholder: "Blood group" %> <br>
<%= f.text_field :email, class: "form-control", placeholder: "Email" %> <br>
<%= f.number_field :phone, class: "form-control", placeholder: "Phone number" %> <br>
<%= f.text_area :hobbies, class: "form-control", placeholder: "Hobbies" %> <br>
<% i=i+1 %>
<% end %>
<hr>
<% end %> <br>
<%= submit_tag "Submit", class: "btn btn-primary" %> <br>
РЕДАКТИРОВАТЬ: В создании действий в FamiliesController
def create
@family = Family.new(family_params)
a = params[:family][:"0"]
@family.user_id = current_user.id
if @family.save
flash[:notice] = params[:family][:"0"]
redirect_to dummy_path
else
flash[:notice] = "didnt happen"
end
end
Таким образом, пользователь видит форму для создания 3 членов семьи для одного user_idВводит данные в 3 идентичные формы и отправляет хитыДанные из3 отдельные формы должны быть сохранены как 3 разных записи в БД при отправке только один разРЕДАКТИРОВАТЬ: Я использую сильные параметры, например, так:
def family_params
params.require(:family).permit(:all)
end
Теперь, когда я отправляю форму, все значения в БД сохраняются как NULL.
Что я делаю неправильно? Разве я не должен использовать сильные параметры?