【发布时间】:2010-07-18 10:02:35
【问题描述】:
我还是 ruby on rails 和 web 开发的新手,所以请多多包涵:
我有两个数组 a1 = [1,2,3,4] b1 = [7,6,5,4]
我想替换我正在使用的数组;在 a1[] 和 b1[] 之间切换。
我目前正在尝试使用 cycle() 命令来完成此操作。
<% @good_bad = [7,6,5,4,3,2,1] %>
<% @bad_good = [1,2,3,4,5,6,7] %>
WITHOUT CYCLE:</br>
<% @super = @bad_good%>
<%= @super%>
<%= @super[0]%>
<%= @super[1]%>
<%= @super[2]%>
WITH CYCLE: </br>
<% @temp_array = cycle(@bad_good , @good_bad , :name => "rating")%>
<%= @temp_array%>
<%= @temp_array[0]%>
<%= @temp_array[1]%>
<%= @temp_array[2]%>
这将显示:
没有周期:1234567 1 2 3 有周期:1234567 49 50 51
我希望打印输出与第一个周期相同,它将@temp 存储到@bad_good。
我可能缺少一些基本的东西。奇怪的是,当我尝试获取数组的单个值时它会打印出 49、50、51,但是当我打印出整个数组时它是准确的?
任何建议表示赞赏, 谢谢, D
【问题讨论】:
-
@Karl 回答解释了你得到的行为。但是你能解释一下你想要达到什么目的吗?您的示例代码看起来很糟糕,我希望您不要在任何地方使用它(或非常相似的东西)。
cycle是文本助手。在我看来,您不应该随意使用它。
标签: ruby-on-rails cycle