Рельсы, связывающие с вложенным ресурсом с разработкой

Action::Controller говорит, что значение идентификатора профиля в методе link_to равно nil. Это мой код:

<p id="notice"><%= notice %></p>
<h2>Listing Schools</h2>
<table>
  <thead>
    <tr>
      <th colspan="3"></th>
    </tr>
  </thead>
  <tbody>
    <% @schools.each do |school| %>
      <tr>
        <td><%= school.name %></td>
        <td><%= link_to edit_user_profile_school_path(current_user, school) %>
      </tr>
    <% end %>
  </tbody>
</table>
<br>
<%= link_to 'New School', new_school_path %>

1 ответ

Вам необходимо указать ключ для ваших параметров:

<%= link_to edit_user_profile_school_path(profile_id: current_user.id, school_id: school.id) %>

при условии, что ваш маршрут выглядит примерно так:

post 'users/:profile_id/schools/:school_id'

Трудно сказать наверняка, не увидев больше кода, но похоже, что вы пропустили:profile_id в ваших параметрах

Другие вопросы по тегам