Increment a number field by one, usually representing a count.
This is used for caching aggregate values, so that they don’t need to be computed every time. For example, a DiscussionBoard may cache post_count and comment_count otherwise every time the board is shown it would have to run an SQL query to find how many posts and comments there are.
- counter_name - The name of the field that should be incremented.
- id - The id of the object that should be incremented.
# Increment the post_count column for the record with an id of 5 DiscussionBoard.increment_counter(:post_count, 5)
# File activerecord/lib/active_record/counter_cache.rb, line 94 def increment_counter(counter_name, id) update_counters(id, counter_name => 1) end