实际上问题不在于'+'符号。但我怀疑它,因为它是该页面中唯一的“+”符号。
导致错误的行是“ - res = req.request_head(imageurl.path)” 我的代码:
- req = Net::HTTP.new(imageurl.host, imageurl.port)
- res = req.request_head(imageurl.path)
抛出错误“ActionView :: Template :: Error(未定义的方法`+'代表nil:NilClass):” 问题是什么?
非常感谢所有帮助&很抱歉造成了不便。
但问题仍然没有解决。
答案 0 :(得分:4)
您可以使用标准的ruby方法以更优雅的方式实现您想要的效果,例如:
- products.shuffle.each_with_index do |product, i|
- if i == 24
%li.product
.image{:style => "width:180px;"}
如果您在每25个产品之后需要li
,则可以使用each_slice
:
- products.shuffle.each_slice(25) do |items|
%li.product
.image{:style => "width:180px;"}
虽然这不是你问题的答案(其他答案应该适合你),但这种方法更为重要。
答案 1 :(得分:1)
似乎名为to_i
的对象上的方法scount
返回nil。调查scount
类可能对我来说似乎是下一步。
在下面的评论之后用一些代码更新;
- scount = 1
- products.shuffle.each do |product|
- if scount == 25
%li.product
.image{:style => "width:180px;"}
- scount += 1
答案 2 :(得分:0)
下面应该有效 -
- products.shuffle.each do |product|
scount = defined?(scount) ? scount.to_i : 0
scount += 1
- if scount == 25
%li.product
.image{:style => "width:180px;"}