2012-03-15 40 views
-4

所以,问题是:由于fixnum不是一个字符串,我如何显示caipirinhas的数量在节目上?如何迭代fixnum

如果您遍历显示此错误:

private method `caipirinha' called for 0:Fixnum 

新饮料观点

<%= d.label :caipiriha %><%= d.number_field :caipirinha %> 

展会饮料观点

<% current_user.bar.caipirinha.times do |s| %> 
    <%= s.caipirinha %> 
<% end %> 
+0

以便它反映的实际问题,请更新您的问题的标题...... – 2012-03-15 12:23:35

+0

秀,有什么实际问题?发生了什么,你期望会发生什么? – 2012-03-15 14:20:15

+0

安德鲁,问题是:我只是在寻找抓住我放在db上的caipirinhas的数量。 – dcalixto 2012-03-15 14:48:34

回答

3

这个怎么样:

<% current_user.bar.caipirinha.to_i.times do |s| %> 
    <%= s.caipirinha %> 
<% end %> 

可以使用to_i方法caipirinha转换为整数,然后调用times就可以了。

+0

感谢您的帮助亚历克斯,但我认为这不是一个转换的问题,但只是为了显示数字。 – dcalixto 2012-03-15 12:47:10

0

这个怎么样?

<%=h s.caipirinha %> 

----------------- edited edited ------------------------- ----

那怎么样呢?

<% current_user.bar.each do |s| %> 
    <%= s.caipirinha %> 
<% end %> 
+0

显示此错误:私人方法'caipirinha'要求2:Fixnum – dcalixto 2012-03-15 14:52:07

+0

3.times {| s |放置; s.foo}这会导致相同的错误。问题在于你的方法“bar.caipirinha”,它返回一个数字。 – allenhwkim 2012-03-15 19:07:02

0

不要你只是想:

<%= current_user.bar.caipirinha %>