2011-03-02 143 views
0

我是另一个Rails新手,并且在创建博客时遵循了Ruby教程。显示所有关于ruby on rails的评论博客

每篇文章都有很多评论,评论属于帖子。

我可以在各个博客中看到评论,并创建了一个显示链接来显示个人评论。

我真的很想做的是创建一个索引页面的评论,显示所有这些。我创建的意见控制器中的索引操作:

def index 
    @title = "All comments" 
    @comments = Comment.all 
end  

以及随附的索引页,

所有评论

<%@ comments.each办|评论| %> 评论:<%= @ comment.body%>

<%端%>

但我得到一个错误:

未定义的方法`体”的零:NilClass

我的路线文件:

资源:帖子做 资源:评论 结束

我真的很感激,如果有人能指出我在正确的方向 - 我认为我的问题是,我的意见嵌套在帖子中。

感谢,

鲍勃

回答

1

您应该使用传入块comment

<% @comments.each do |comment| %> Comment: <%= comment.body %>

你当前正在调用@comment.body@comment是零,因为它是不确定的在你的控制器和其他地方。

1

因此,在视图文件的循环中,您正在遍历@comments数组,为@comments中的每个注释创建一个comment对象。因此,请尝试

<% @comments.each do |comment| %> Comment: <%= comment.body %> 
+0

你是一个绅士和学者。那很完美! – 2011-03-02 18:50:17

+0

任何时候,很乐意为您提供帮助 – William 2011-03-02 18:52:32

+0

嗨,我现在有一个评论列表,但我无法显示相关的帖子标题。我尝试了<%= @ posts.post_id%>(例如),但最终出现错误。什么是最好的方法来做到这一点? – 2011-03-02 20:16:33