我无法想到这一点 - MicropostsController中的NoMethodError #index
和
我在网上搜索过,似乎无法做出正确的改变。我正在做迈克尔哈特尔的Rails教程,我在第2章,我们做微博。 这是index.html.erb
<table>
<thead>
<tr>
<th>Content</th>
<th>User</th>
<th colspan="3"></th>
</tr>
</thead>
<tbody>
<% @microposts.each do |micropost| %>
<tr>
<td><%= micropost.content %></td>
<td><%= micropost.user_id %></td>
<td><%= link_to 'Show', micropost %></td>
<td><%= link_to 'Edit', edit_micropost_path(micropost) %></td>
<td><%= link_to 'Destroy', micropost, method: :delete, data: { confirm: 'Are you sure?' } %></td>
</tr>
<% end %>
</tbody>
</table>
<br>
<%= link_to 'New Micropost', new_micropost_path %>
和
Microposts控制器
Class MicropostsController < ApplicationController
def index
end
def show
end
def new
end
def edit
end
def create
end
def update
end
def destroy
end
end
答案 0 :(得分:1)
您收到此错误是因为索引操作中没有微博实例变量,在索引操作中您应该像这样设置@microposts:
def index
@microposts = Micropost.all
end