aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib
diff options
context:
space:
mode:
Diffstat (limited to 'activerecord/lib')
-rw-r--r--activerecord/lib/active_record/counter_cache.rb8
1 files changed, 4 insertions, 4 deletions
diff --git a/activerecord/lib/active_record/counter_cache.rb b/activerecord/lib/active_record/counter_cache.rb
index 9355a2f7a7..020f4b872e 100644
--- a/activerecord/lib/active_record/counter_cache.rb
+++ b/activerecord/lib/active_record/counter_cache.rb
@@ -46,11 +46,11 @@ module ActiveRecord
counter_name = reflection.counter_cache_column
updates = { counter_name.to_sym => object.send(counter_association).count(:all) }
+ updates.merge!(touch_updates(object, touch)) if touch
- unscoped.where(primary_key => object.id).update_all(
- updates.merge(touch_updates(object, touch))
- )
+ unscoped.where(primary_key => object.id).update_all(updates)
end
+
return true
end
@@ -106,7 +106,7 @@ module ActiveRecord
if touch
object = find(id)
- touch_updates(object, touch).map do |column, touch_time|
+ touch_updates(object, touch).each do |column, touch_time|
updates << "#{connection.quote_column_name(column.to_s)} = #{connection.quote(touch_time)}"
end
end