Hey everybody,
Rails currently offers ''belongs_to :counter_cache'', which is a
very
basic replacement for count triggers:
":counter_cache - caches the number of belonging objects on the
associate class through use of increment_counter and decrement_counter.
The counter cache is incremented when an object of this class is created
and decremented when it?s destroyed. This requires that a column named
"#{table_name}_count" (such as comments_count for a belonging Comment
class) is used on the associate class (such as a Post class)."
So, all that''s possible is incrementing/decrementing
"#{table_name}_count" when an item is created or destroyed. I think
it''d
be useful if :counter_cache also had this functionality:
- ability to specify the count columns (I also maintain counts of active
members, items, etc.; so..."active_members_count, active_items_count,
...")
- ability to specify a function (probably belonging to the parent model)
which could inspect the child object, which of its properties (like via
PostgreSQL''s OLD/NEW vars) changed, then update count columns
accordingly.
Any other thoughts?
Joe
--
Posted via http://www.ruby-forum.com/.