Rails Counter Cache - 09 Apr 2014
Rails offers a wide range of features that aren’t commonly used, but are very
helpful in the right situation. A feature I’ve found useful when I need to
display an association count for a list of records is counter_cache
.
With counter_cache
, Rails will automatically update a column on your primary
record whenever an association is added. Given an example of a post with
comments, your Rails code will look like:
You can then use post.comments_count
when displaying a list of posts to
increase performance and avoid unneeded queries to the database.