Частичные и локальные переменные
-
22-07-2019 - |
Вопрос
Если мы хотим передать коллекцию частично, нам нужно сделать следующее:
<%= render :partial => "post", :collection => @posts %>
Если мы хотим передать один объект внутри пользовательской переменной, мы делаем это:
<%= render :partial => "item", :locals => { :item => @advertisement } %>
Что мне нужно сделать, чтобы передать коллекцию , " проксирование " это через пользовательскую переменную (как во втором случае)?
Решение
Просто передайте его через местных жителей, как во втором примере
<%= render :partial => "item", :locals => { :posts => @posts } %>
Другие советы
Вы можете использовать другой способ вызова партиалов:
render(:partial => 'post', :object => @posts)
Я обнаружил, что использование: в качестве параметра намного более понятно:
<%= render :partial => "item", :collection => @rabbits, :as => :item %>
Не связан с StackOverflow