Я создаю приложение Rails, и я наткнулся на небольшую загадку. Мне нужна форма «Создать новую запись для DataType1», которая не только создает новую строку для DataType1, но также вставляет до четырех новых строк для DataType2.
Я знаю все о fields_for, но моя проблема в том, что мне нужно отправить до четырех DataType2, и единственное соединение, которое они имеют к DataType1, заключается в том, что на них ссылаются через поле в DataType2.
Вот упрощенная база данных:
create_table :data_type_1 do |t|
t.string :title
t.text :body
t.timestamps
end
create_table :data_type_2 do |t|
t.belongs_to :parent
t.timestamps
end
Теперь у меня все отношения установлены и все; это не проблема. Проблема в том, что я просто не могу понять, как передать параметры для DataType2s вместе с параметрами для нового DataType1. Когда кто-то покажет мне, как мне следует поступить, я могу настроить новый DataType2, чтобы он довольно легко связывался с новым DataType1.
Вот что у меня есть для формы на данный момент:
<% form_for(@data_type_1) do |f| %>
<%= f.error_messages %>
<p>
<%= f.label :title %><br />
<%= f.text_field :title %>
</p>
# Etc...
<p>
# New items need to be iterated here
# DataType2[1]: [ ]
# DataType2[2]: [ ]
# DataType2[3]: [ ]
# DataType2[4]: [ ]
# (Note that these numbers are just examples.)
</p>
<p>
<%= f.submit "Create" %>
</p>
<% end %>
Я относительно новичок в Rails, и я прошу прощения, если этот вопрос немного болтается.