Почему рельсы работают частично дважды? - PullRequest
3 голосов
/ 07 июня 2011

Я вызываю частичное в одном из моих представлений следующим образом:

<%= render :partial => 'events/attendees', :collection => @attendees %>

частичное, однако, выполняется дважды по какой-то причине ... вот частичное:

<% @attendees.each do |user| %>

    <li><%= link_to user.name, user %></li>

<% end %>

и я убедился, что rails на самом деле выполняет этот партиал дважды, потому что выходные данные показывают каждый элемент из @attendees дважды

1 Ответ

8 голосов
/ 07 июня 2011

Это потому, что один "цикл" взят из Rails (:collection означает, что Rails будет отображать частичное для каждого элемента в коллекции, в данном случае @attendees) и один цикл через ваш собственный частичный.

Измените частичное на нижнее (не уверен в отношении между участником / пользователем, но вот пример):

<li><%= link_to attendee.name, attendee.user %></li>

Или измените вызов частичного на:

<%= render :partial => 'events/attendees' %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...