在过去的12个小时里,我一直试图找到这个问题的解决方案,只是不得不承认失败并提出问题......
我目前正在开展一个项目,该项目涉及为产品添加启动评级功能。
the_number = number_with_precision(product.no_of_stars,:precision => 0)为我提供该产品的平均星级评分。我可以在index.html.erb页面上显示数字(例如4),但在我的生命中不能让它为每个数字(而不是数字)呈现星形jpg。
我知道<%=和<%etc之间的区别但是因为这是我的第一篇文章,我无法复制并通过我使用过的代码: - (
SO ... the_number(例如)会给我4,但是我的index.html.erb文件中的以下循环结构不断抛出错误
undefined method
次为“4”:ActiveSupport :: SafeBuffer`
the_number.times do
img src="my-image.jpg" alt=""
end
我理解上面的代码段没有包装在正确的标签中,但正如之前所解释的那样,它也不允许我这样做。请假设第1行和第3行包含在没有'='的ruby标记中,并且图像包含在相关的html img标记中。您还可以假设评级“系统”正常工作。
非常感谢任何帮助: - )
由于
答案 0 :(得分:0)
会<%= ... Integer(expression resulting in 4) %>
为你工作吗?
你可以追加时间并继续循环
,例如
Integer(the_number).times do
img src="my-image.jpg" alt=""
end
答案 1 :(得分:0)
the_number.to_i.times do
img src="my-image.jpg" alt=""
end
答案 2 :(得分:0)
尝试将the_number
转换为整数:
the_number.to_i
然后您应该可以在其上调用times
。