这是我的代码示例:
<%= form_for [@facility, @owner],:html => {:multipart => true} do |f| %>
<%= render 'shared/error_messages_doc' %>
<table>
<tr>
<td valign=top> First Name </td>
<td ><%= f.text_field :first_name %></td>
</tr>
<tr>
<td valign=top> Last Name </td>
<td ><%= f.text_field :last_name %></td>
</tr>
</table>
<br>
<table width = "750">
<tr>
<th>Day</th>
<th>Start time</th>
<th>End time</th>
</tr>
<%= f.fields_for :working_hours, @owner.working_hours do |wh| %>
<div>
<tr>
<td><%= wh.object.week_day %></td>
<td>
<center><%= wh.text_field :start_time, :value => wh.object.start_time.strftime('%H:%M'), :style => "width: 100px;" %></center>
</td>
<td>
<center><%= wh.text_field :end_time, :value => wh.object.end_time.strftime('%H:%M'), :style => "width: 100px;" %></center>
</td>
</tr>
</div>
<% end %>
</table>
<tr>
<td><%= f.submit :class => "btn btn-primary" %></td>
</tr>
</table>
<% end %>
如您所见,我正在尝试创建一个拥有许多工作小时(7 个工作小时,每个工作日一个)的所有者。问题是这与编辑一起使用,但是当我尝试创建新所有者时,working_hours 的字段不显示。我认为问题在于@owner.working_hours 正在从所有者那里寻找working_hours,目前不存在。由于我正在创建一个新所有者,因此我需要为该所有者创建一个包含 7 个工作小时的数组。我怎样才能做到这一点?