【发布时间】:2015-03-10 06:55:04
【问题描述】:
我在 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?
【问题讨论】:
-
$my_array是如何以及在哪里定义的?你确定在加载视图之前它会被实例化吗?一些关于它的代码 sn-ps 可能很有用。
标签: ruby-on-rails ruby arrays erb