Ruby 为什么我会得到一个未定义的方法&each';零:零级?

Ruby 为什么我会得到一个未定义的方法&each';零:零级?,ruby,nomethoderror,Ruby,Nomethoderror,这里完全是新手。我只是想列出“站点”中的所有对象。我知道这是一件非常简单的事情,但我似乎无法找到它 错误: NoMethodError in Home#index Showing /Users/jasonmurphy/data/projects/moviefeed/app/views/home/index.html.erb where line #6 raised: undefined method `each' for nil:NilClass Extracted source (

这里完全是新手。我只是想列出“站点”中的所有对象。我知道这是一件非常简单的事情,但我似乎无法找到它

错误:

NoMethodError in Home#index

Showing /Users/jasonmurphy/data/projects/moviefeed/app/views/home/index.html.erb where     line #6 raised:

undefined method `each' for nil:NilClass
Extracted source (around line #6):

3: <u>SITES</u>
4: <br>
5: 
6: <% @sites.each do |site| %>
7:  <%= site.name %>
8:  <% end %>

在不知道任何其他信息的情况下-看起来它永远不会击中您的站点控制器。我会将您的根行更改为:

root :to => 'sites#index'

然后,您必须将视图代码移动到app/view/sites/directory。或者,您也可以将控制器代码移动到家庭控制器。

并且文件
views/home/index.html.erb
可以移动到
views/sites/index.html.erb
<u>SITES</u>
<br>

<% @sites.each do |site| %>
<%= site.name %>
 <% end %>
resources :sites
resources :critics
root :to => "home#index"
root :to => 'sites#index'