Rails: как я могу передать коллекцию как :object в render() без повторения ее для меня?

У меня есть частичное изображение, которое я визуализирую с помощью render(:partial => "list", :object => my_collection), которое выглядит так:

<ul>
<% list.each do |l| %>
<li>l</li>
<% end %>
</ul>

Однако, когда я запускаю это, я обнаруживаю, что то, что передается в партиал, на самом деле является одним из дочерних элементов my_collection, а не самой коллекцией. Предположительно, это часть магии рельсов для реализации «рендеринга частичного для каждого элемента в коллекции», но в этом случае я хочу передать саму коллекцию. Как я могу это сделать, не прибегая к использованию переменной-члена?


person kdt    schedule 20.01.2011    source источник


Ответы (1)


:locals => {:list => my_collection}

вместо: объект. :object предназначен для рендеринга партиала для каждого члена объекта.

person Satya    schedule 20.01.2011