Rails将数组传递给部分使用集合

时间:2013-08-20 03:05:38

标签: ruby-on-rails activerecord ruby-on-rails-3.2 slim-lang

我正在尝试遍历常规数组(不是ActiveRecord),并使用每个元素渲染部分数据。

在我看来(我正在使用苗条):

== render partial: "layouts/display_elements", collection: my_array

我的部分(现在)仅包含:

= "#{display_element}"

但是,我收到以下错误:

undefined local variable or method `display_element' for #<#<Class:0x007f7fe2e6ca58>:0x007f7fe51e0408>

这是不使用ActiveRecord所施加的限制吗?我是否必须诉诸

= my_array.each do |e|

1 个答案:

答案 0 :(得分:5)

我不太熟悉瘦身,但我认为添加:as选项对您有用:

== render partial: "layouts/display_elements", collection: my_array, as: :display_element

这将允许您在部分中访问集合my_array作为display_item局部变量。