diff options
author | Ryuta Kamizono <kamipo@gmail.com> | 2018-01-03 22:11:39 +0900 |
---|---|---|
committer | Ryuta Kamizono <kamipo@gmail.com> | 2018-01-04 22:55:16 +0900 |
commit | 652258e41a882acccdb9a3ce211dbf356e738b28 (patch) | |
tree | 3d35a5e75e5ac0ba5be027aa8b341238f3902d40 /activerecord/test/models | |
parent | 092c547d7fca936c7a1fe39a1bdca6bc8d98940c (diff) | |
download | rails-652258e41a882acccdb9a3ce211dbf356e738b28.tar.gz rails-652258e41a882acccdb9a3ce211dbf356e738b28.tar.bz2 rails-652258e41a882acccdb9a3ce211dbf356e738b28.zip |
Fix newly added reflection order when redefining association
Currently reflections keeps the order when first added even if when
redefining association. As a result of the order, redefining through
association which use newly added association will raise
`HasManyThroughOrderError`. We need to redefine reflection order as well
when redefining association.
Fixes #31068.
Diffstat (limited to 'activerecord/test/models')
-rw-r--r-- | activerecord/test/models/tag.rb | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/activerecord/test/models/tag.rb b/activerecord/test/models/tag.rb index bc13c3a42d..c1a8890a8a 100644 --- a/activerecord/test/models/tag.rb +++ b/activerecord/test/models/tag.rb @@ -11,6 +11,6 @@ end class OrderedTag < Tag self.table_name = "tags" - has_many :taggings, -> { order("taggings.id DESC") }, foreign_key: "tag_id" - has_many :tagged_posts, through: :taggings, source: "taggable", source_type: "Post" + has_many :ordered_taggings, -> { order("taggings.id DESC") }, foreign_key: "tag_id", class_name: "Tagging" + has_many :tagged_posts, through: :ordered_taggings, source: "taggable", source_type: "Post" end |