2013-05-30 1 views
0

Я хочу отобразить некоторые дочерние элементы с чем-то иным, чем их частичные по умолчанию (т. Е. app/views/child_items/_child_item.html.erb). По умолчанию один был под открытым небом, и он не подходит для публичного просмотра чего-либо, но я все же хочу сохранить его для целей управления контентом.Rails: визуализировать определенные частичные (за исключением объекта по умолчанию)

Это то, что я иду внутри зрения родительского элемента, предполагая, что частичное определено в app/views/child_items/_alternate_partial.html.erb:

<%= render containing_object.child_items, :partial => 'child_items/alternate_partial' %>

Но ребенок элементы все еще делают с их частичной умолчанию.

ответ

1

Попробуйте это:

<%= render 'child_items/alternate_partial', :collection => containing_object.child_items %> 
+0

Хорошо, что у меня в парциальное! Теперь я получаю NameError, которого я раньше не делал - он не знает, что такое 'child_item'. –

+0

Внутри частичного кода вы должны использовать переменную named как класс объектов, которые вы рендерите. Например, если ваш объект child_item является экземпляром модели Post, вы должны использовать 'post' в свой' alternate_partial' вместо 'child_item' –

+0

. Посмотрите это http://guides.rubyonrails.org/layouts_and_rendering.html (раздел 3.4 .5 и 3.4.6), чтобы получить больше информации о том, как работать с рендерингом коллекций в частичных. –

 Смежные вопросы

  • Нет связанных вопросов^_^