method
update_counters
v6.0.0 -
Show latest stable
- Class:
ActiveRecord::Relation
update_counters(counters)public
No documentation available.
# File activerecord/lib/active_record/relation.rb, line 471
def update_counters(counters) # :nodoc:
touch = counters.delete(:touch)
updates = {}
counters.each do |counter_name, value|
attr = arel_attribute(counter_name)
updates[attr.name] = _increment_attribute(attr, value)
end
if touch
names = touch if touch != true
touch_updates = klass.touch_attributes_with_time(*names)
updates.merge!(touch_updates) unless touch_updates.empty?
end
update_all updates
end