1
我'得到错误无方法错误未定义的方法`找到 '为#<TopFood:0x007fdfd5e0f4e0>
NoMethodError in Data#input Showing /home/adijanuarsyah/Projects/Food/app/views/data/_idfood.html.erb
其中线#8提出:
undefined method `find' for #<TopFood:0x007fdfd558fa90>
在i'我用find方法获取查询食物= foods.find(rand_number)我得到了上面的错误,但是当使用TopFood.find(rand_number)时,它的工作完美。
这是我的看法
<h2>Suggestion Indonesian top dishes</h2>
<ul id="foodList">
<% TopFood.where(:country => "ind").find_each do |foods | %>
<% rand_number = rand(52) + 1 %>
<% @food = foods.find(rand_number)%>
<li><%= @food.name %></li>
<% puts @food.inspect %>
<% end %>
</ul>
<div id="loadMore">More sugesstions</div>
<div id="showLess">Show less</div>
任何线索,这到底是怎么回事呢?
谢谢。
哦,我明白了,需要更多关于班级和实例的学习,现在我得到了结果,但只有一个食物名称结果,如果我想要find_each方法获得我所有的食物名称? –
'find_each'只返回一行,除了你添加一个随机的'id',那也只会匹配一行。你想要做什么?如果你想显示超过1种食物,只需摆脱',:id => rand(52)+ 1'。 – Mischa
我试图获得包含国家字段“ind”的所有食物名称行,但是:id随机,所以食物名称显示动态每个用户加载页面,如果iam使用@food = TopFood.find_by_id(rand_number)它可以显示所有随机的食物名称,但不会显示:country =>'ind' –