传递
时,无法在索引视图中呈现类别名称<%= post.category.name %>
到
<% @posts.each do |post| %>
错误:
undefined method `name' for nil:NilClass
然而,传递时
<%= post.category %>
我得到了
#<Category:0x007ff5c2c20b68>
在个别的表演行动中
<%= @post.category.id %>
完美无缺。可能是什么问题? 感谢
答案 0 :(得分:1)
我认为对于至少1篇文章,该类别为nil
您可以通过进行此更改来避免错误
<%= post.category.name if post.category %>
或
<%= post.category.try :name %>
答案 1 :(得分:0)
查看每种情况下调用的SELECT命令,您可以在终端中看到它运行rails s
我怀疑由于某种原因,在索引控制器中,类别信息没有与帖子一起检索
如果您不知道SELECT命令有什么问题,请将此处的所有内容与控制器和模型一起发布