Abstract base class for AggregateReflection and AssociationReflection. Objects of AggregateReflection and AssociationReflection are returned by the Reflection::ClassMethods.
- #
- C
- K
- N
[R] | active_record | |
[R] | macro | Returns the macro type.
|
[R] | name | Returns the name of the macro.
|
[R] | options | Returns the hash of options used for the macro.
|
Source: show
# File activerecord/lib/active_record/reflection.rb, line 106 def initialize(macro, name, options, active_record) @macro = macro @name = name @options = options @active_record = active_record @plural_name = active_record.pluralize_table_names ? name.to_s.pluralize : name.to_s end
Returns true
if self
and
other_aggregation
have the same name
attribute,
active_record
attribute, and other_aggregation
has an options hash assigned to it.
Source: show
# File activerecord/lib/active_record/reflection.rb, line 133 def ==(other_aggregation) super || other_aggregation.kind_of?(self.class) && name == other_aggregation.name && other_aggregation.options && active_record == other_aggregation.active_record end
Returns the class name for the macro.
composed_of :balance, :class_name => 'Money'
returns
'Money'
has_many :clients
returns
'Client'
Source: show
# File activerecord/lib/active_record/reflection.rb, line 127 def class_name @class_name ||= options[:class_name] || derive_class_name end
Returns the class for the macro.
composed_of :balance, :class_name => 'Money'
returns the
Money class has_many :clients
returns the Client class
Source: show
# File activerecord/lib/active_record/reflection.rb, line 119 def klass @klass ||= class_name.constantize end