在Ruby on Rails中计算Blog的记录 - 简单问题

时间:2009-11-18 04:15:20

标签: ruby-on-rails ruby controller blogs

我是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)。

1 个答案:

答案 0 :(得分:4)

摆脱那种控制器方法 - 替换你当前的link_to,例如:

<%= link_to "View & Add Comments (#{post.comments.count})" %>

如果您已有@post个对象来获取评论数量,则只需拨打comments.count即可。如果您不熟悉字符串插值,this link可能有所帮助。