2

在我看来,我有这个超级简单的代码:

<% @something.each do |something| %>

<% i = i+1 %>

<div class="row">
<div class="span1"><span class="badge untouched"><%= i %></span></div>
</div>

<% end %>

并得到这个错误

undefined method `+' for nil:NilClass

我在另一个视图中有完全相同的代码,它在那里工作!但是,我是 Rails 新手,你知道我想做什么。也许有一种更常见的方法可以在每个循环中增加一个整数?这个错误来自哪里?

谢谢你的帮助!

4

4 回答 4

4

Well, i must have a value before you can increment it.

<% i = 0 %>
<% i = i+ 1 %>
于 2013-02-27T11:37:37.850 回答
4

我没有初始化,

而不是每个使用 each_with_index 如下

<% @something.each_with_index do |something, i| %>

<div class="row">
<div class="span1"><span class="badge untouched"><%= i %></span></div>
</div>

<% end %>
于 2013-02-27T11:41:45.427 回答
1

初始化变量 i = 0

<% i=0
i = i+1 %>
于 2013-02-27T13:25:18.437 回答
0

定义:

def nil.+ other; other end
于 2013-06-15T22:58:28.680 回答