Depending on performance needs, you can also look at the counter_cache
option for the ActiveRecord association.

Your current approach has to query the child table to get the count,
which could be a performance hit on a big site.
Don't prematurely optimize though - it's just good to know about other
options in case the need arises.

On Sep 18, 8:05 am, Mark <polluxop...@gmail.com> wrote:
> That did it.  I think I've been staring at the monitor too
> long...  :-)
>
> On Sep 18, 2:34 am, Gourav <gouravtiwar...@gmail.com> wrote:
>
> > I think, you must have Post-'has many"-Comments relationship
>
> > So, to find number of comments:
> > post.comments.count will give you total number of comments of a post.
>
> > -Gourav
>
> > On Sep 18, 10:58 am, Mark <polluxop...@gmail.com> wrote:
>
> > > I have "posts"  and "comments", and I'd like to display the number of
> > > comments each post has (and display 0 if none).  In the index Posts
> > > view, I display a list of posts and their authors using the below
> > > partial.  What I can't figure out is how to limit the comment count to
> > > the post listing (my attempts so far show the total number of comments
> > > in the database).  How do I limit the count?
>
> > > partial:
>
> > > <% div_for post do %>
> > >         <p><strong><%= link_to_unless_current h(post.title), post 
> > > %></strong>
> > > -
> > >                 <font size="1">created by <%= post.user %> <%= 
> > > time_ago_in_words
> > > (post.created_at) %> ago
> > >                 </font><br />
> > >         <%= post.body %></p>
> > > <% end %>
>
> > > Many thanks!
> > > Mark
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com
To unsubscribe from this group, send email to 
rubyonrails-talk+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to