aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/models/post.rb
diff options
context:
space:
mode:
authorEugene Kenny <elkenny@gmail.com>2018-01-14 20:46:19 +0000
committerEugene Kenny <elkenny@gmail.com>2018-01-14 20:46:19 +0000
commit3e71bc4b048bef2ae7723dde5082020fd984bbd6 (patch)
tree988395bcd199720560661a316b8c2ee99b44c984 /activerecord/test/models/post.rb
parentfd04c8cbb6627ef65ea728b5026b21bd24471c18 (diff)
downloadrails-3e71bc4b048bef2ae7723dde5082020fd984bbd6.tar.gz
rails-3e71bc4b048bef2ae7723dde5082020fd984bbd6.tar.bz2
rails-3e71bc4b048bef2ae7723dde5082020fd984bbd6.zip
Don't update counter cache when through record was not destroyed
When removing a record from a has many through association, the counter cache was being updated even if the through record halted the callback chain and prevented itself from being destroyed.
Diffstat (limited to 'activerecord/test/models/post.rb')
-rw-r--r--activerecord/test/models/post.rb3
1 files changed, 3 insertions, 0 deletions
diff --git a/activerecord/test/models/post.rb b/activerecord/test/models/post.rb
index 780a2c17f5..b552f66787 100644
--- a/activerecord/test/models/post.rb
+++ b/activerecord/test/models/post.rb
@@ -106,6 +106,9 @@ class Post < ActiveRecord::Base
end
end
+ has_many :indestructible_taggings, as: :taggable, counter_cache: :indestructible_tags_count
+ has_many :indestructible_tags, through: :indestructible_taggings, source: :tag
+
has_many :taggings_with_delete_all, class_name: "Tagging", as: :taggable, dependent: :delete_all, counter_cache: :taggings_with_delete_all_count
has_many :taggings_with_destroy, class_name: "Tagging", as: :taggable, dependent: :destroy, counter_cache: :taggings_with_destroy_count