我是rails的新手,很抱歉这个简单的问题。我已经关注了几个教程,并建立了一个评论博客(甚至使用了一点点AJAX - 我为自己感到骄傲)。我已经做了一些自定义,现在我正试图在index.html.erb中显示一个评论计数,这是一个可点击的链接,它带给你show.html.erb页面。这是我到目前为止所做的,并不确定它是对的。在comments_controller中,我添加了以下内容:
def count
@post = Post.find(params[:post_id])
@comment = @post.comments.count(params[:comment])
end
第一个问题是这是正确的def来计算与特定帖子相关的评论。第二个问题是我如何在我的index.html.erb页面中调用它,我有以下内容:
<% @posts.each do |post| %>
<%= render :partial => post %>
<%= link_to 'View & Add Comments', post %>
<% end %>
正如您所看到的,我目前正在使用link_to引用来访问该页面,但理想情况下它希望显示类似于:Comments(8)。
答案 0 :(得分:4)
摆脱那种控制器方法 - 替换你当前的link_to,例如:
<%= link_to "View & Add Comments (#{post.comments.count})" %>
如果您已有@post
个对象来获取评论数量,则只需拨打comments.count
即可。如果您不熟悉字符串插值,this link可能有所帮助。