我在创建包含相同模型的多个实例的表单时遇到问题。我的表单用于时间表应用程序。下面是我想要创建的截图。 http://imageshack.us/f/541/5w3o.png/
将存储数据的表称为project_activity,包含以下列名: activity_id PK,project_id,task_id,party_id,activity_hours。
以下是我的代码。我提供的屏幕截图是我的代码的输出,但它无法保存后端的任何记录。
我的目的是让3个下拉菜单(派对,项目和任务)在用户选择时将存储在本地变量中。然后,将在显示的每个activity_hour字段的隐藏字段标记中捕获此变量,以便在保存表单时,将使用相同的方,项目和任务创建7个project_activity记录。
我没有在提供的代码中尝试这个,因为我不知道如何。有可能吗?
<h1>Timesheet</h1>
<%= form_for(@project_activity) do |f| %>
<%= f.collection_select(:party_id, Party.all, :id, :party_name, {:prompt => params[current_party]}, {class: "span2"}) %></br>
<table class="table">
<tr>
<td><%= select_tag "project_activity[project_id]",
grouped_options_for_select(Project.for_select(@date.strftime("%Y%m%d"))),
{include_blank: true, class: "span2"} %></td>
<td><%= select_tag "project_activity[task_id]",
grouped_options_for_select(ProjectTask.for_select(@date.strftime("%Y%m%d"))),
{include_blank: true, class: "span2"} %></td>
<% form_date = @date.beginning_of_week %>
<%= (@date.beginning_of_week..@date.end_of_week).each do %>
<%= f.fields_for(@project_activity) do |builder| %>
<td>
<%= builder.number_field :activity_hours, :class => 'input-mini' %>
<%= hidden_field_tag "project_activity[activity_date]", form_date %>
<% form_date+=1 %>
</td>
<% end %>
<% end %>
<tr>
<td><%= f.submit "Save", :class => 'btn btn-primary' %></td>
</tr>
</table>
<% end %>