0

これは私のコードのサンプルです:

    <%= 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 %>

ご覧のとおり、多くの working_hours (平日ごとに 1 つずつ、7 working_hours) を持つ所有者を作成しようとしています。問題は、これが編集で機能していることですが、新しい所有者を作成しようとすると、working_hours のフィールドが表示されません。問題は、@owner.working_hours が現在存在しない所有者から working_hours を探していることだと思います。新しい所有者を作成しているので、所有者のために 7 working_hours の配列を作成する必要があります。これどうやってするの?

4

1 に答える 1