从rb中的数组读取值到erb文件

时间:2015-03-09 22:32:24

标签: ruby-on-rails ruby arrays erb

我在Ruby中有一个全局数组,有一些字符串对象。类似的东西:

$my_array = ['apple', 'orange', 'cherries']

在每个ERB文件中,我希望从该数组中读取一个对象。所以在我的ERB文件中,我使用了:"<%= $my_array[0] %>",但这并不起作用。我得到的错误是"undefined method [] for nil:NilClass"。但是当我在调试时打印$my_array时,我看到数组中存在值。所以看起来ERB没有从Ruby读取数组。

但是如果我在Ruby中有一个全局变量,例如:$my_var = "This is a text"并且从ERB读取这个变量"<%= $my_var %>"效果很好。

如何读取从Ruby到ERB的全局数组?

1 个答案:

答案 0 :(得分:0)

您也可以使用CONSTANT作为替代方案,如下所示。

MY_ARRAY = ["apple", "orange", "cherries"]

它会起作用:

MY_ARRAY[0] => "apple"
MY_ARRAY.first => "apple"

或简单变量

@my_array = ["apple", "orange", "cherries"]

也会起作用:

@my_array[0] => "apple"
@my_array.first => "apple"
@my_array.last => "cherries"