diff options
author | Kevin Deisz <kevin.deisz@gmail.com> | 2018-05-31 09:33:14 -0400 |
---|---|---|
committer | Kevin Deisz <kevin.deisz@gmail.com> | 2018-05-31 09:33:46 -0400 |
commit | ce337d1757fdd01e5f496f741e33275a7440b9ac (patch) | |
tree | 70a4f7f02c11209c52436b0aee2f2fcd6d5b617b /activerecord | |
parent | bc3b6ea461ee82a4c34877168fd498b81f12763c (diff) | |
download | rails-ce337d1757fdd01e5f496f741e33275a7440b9ac.tar.gz rails-ce337d1757fdd01e5f496f741e33275a7440b9ac.tar.bz2 rails-ce337d1757fdd01e5f496f741e33275a7440b9ac.zip |
Move ActiveStorage reflection logic entirely into ActiveStorage
Diffstat (limited to 'activerecord')
-rw-r--r-- | activerecord/lib/active_record/reflection.rb | 46 |
1 files changed, 2 insertions, 44 deletions
diff --git a/activerecord/lib/active_record/reflection.rb b/activerecord/lib/active_record/reflection.rb index 231c785a30..c47e0dc03c 100644 --- a/activerecord/lib/active_record/reflection.rb +++ b/activerecord/lib/active_record/reflection.rb @@ -11,7 +11,6 @@ module ActiveRecord included do class_attribute :_reflections, instance_writer: false, default: {} class_attribute :aggregate_reflections, instance_writer: false, default: {} - class_attribute :attachment_reflections, instance_writer: false, default: {} end def self.create(macro, name, scope, options, ar) @@ -29,10 +28,6 @@ module ActiveRecord HasOneReflection when :belongs_to BelongsToReflection - when :has_one_attached - HasOneAttachedReflection - when :has_many_attached - HasManyAttachedReflection else raise "Unsupported Macro: #{macro}" end @@ -48,18 +43,14 @@ module ActiveRecord ar.aggregate_reflections = ar.aggregate_reflections.merge(name.to_s => reflection) end - def self.add_attachment_reflection(ar, name, reflection) - ar.attachment_reflections.merge!(name.to_s => reflection) - end - # \Reflection enables the ability to examine the associations and aggregations of # Active Record classes and objects. This information, for example, # can be used in a form builder that takes an Active Record object # and creates input fields for all of the attributes depending on their type # and displays the associations to other objects. # - # MacroReflection class has info for the AggregateReflection and - # AssociationReflection classes. + # MacroReflection class has info for AggregateReflection and AssociationReflection + # classes. module ClassMethods # Returns an array of AggregateReflection objects for all the aggregations in the class. def reflect_on_all_aggregations @@ -74,21 +65,6 @@ module ActiveRecord aggregate_reflections[aggregation.to_s] end - # Returns an array of reflection objects for all the attachments in the - # class. - def reflect_on_all_attachments - attachment_reflections.values - end - - # Returns the reflection object for the named +attachment+. - # - # User.reflect_on_attachment(:avatar) - # # => the avatar reflection - # - def reflect_on_attachment(attachment) - attachment_reflections[attachment.to_s] - end - # Returns a Hash of name of the reflection as the key and an AssociationReflection as the value. # # Account.reflections # => {"balance" => AggregateReflection} @@ -161,8 +137,6 @@ module ActiveRecord # HasOneReflection # BelongsToReflection # HasAndBelongsToManyReflection - # HasOneAttachedReflection - # HasManyAttachedReflection # ThroughReflection # PolymorphicReflection # RuntimeReflection @@ -439,22 +413,6 @@ module ActiveRecord end end - # Holds all the metadata about a has_one_attached attachment as it was - # specified in the Active Record class. - class HasOneAttachedReflection < MacroReflection #:nodoc: - def macro - :has_one_attached - end - end - - # Holds all the metadata about a has_many_attached attachment as it was - # specified in the Active Record class. - class HasManyAttachedReflection < MacroReflection #:nodoc: - def macro - :has_many_attached - end - end - # Holds all the metadata about an association as it was specified in the # Active Record class. class AssociationReflection < MacroReflection #:nodoc: |