class ActiveRecord::Reflection::AbstractReflection
:nodoc:
and ThroughReflection
Holds all the methods that are shared between MacroReflection, AssociationReflection
def build_association(attributes, &block)
Returns a new, unsaved instance of the associated class. +attributes+ will
def build_association(attributes, &block) klass.new(attributes, &block) end
def class_name
composed_of :balance, class_name: 'Money' returns 'Money'
Returns the class name for the macro.
def class_name @class_name ||= (options[:class_name] || derive_class_name).to_s end
def join_keys(assoc_klass)
def join_keys(assoc_klass) JoinKeys.new(foreign_key, active_record_primary_key) end
def primary_key_type
def primary_key_type klass.type_for_attribute(klass.primary_key) end
def quoted_table_name
def quoted_table_name klass.quoted_table_name end
def source_macro
def source_macro ActiveSupport::Deprecation.warn(<<-MSG.squish) ActiveRecord::Base.source_macro is deprecated and will be removed without replacement. MSG macro end
def table_name
and ThroughReflection
Holds all the methods that are shared between MacroReflection, AssociationReflection
def table_name klass.table_name end