class Opium::Model::Relatable::Metadata
Attributes
inverse_relation_name[RW]
inverse_relation_type[RW]
owning_class_name[RW]
relation_name[RW]
relation_type[RW]
target_class_name[RW]
Public Class Methods
new( klass, relation_type, relation_name, options = {} )
click to toggle source
# File lib/opium/model/relatable/metadata.rb, line 7 def initialize( klass, relation_type, relation_name, options = {} ) self.owning_class_name = klass.model_name self.relation_type = relation_type self.relation_name = relation_name self.target_class_name = (options[:class_name] || relation_name).to_s.classify self.inverse_relation_name = (options[:inverse_of] || determine_inverse_relation_name).to_s end
Private Instance Methods
determine_inverse_relation_name()
click to toggle source
# File lib/opium/model/relatable/metadata.rb, line 19 def determine_inverse_relation_name method = case relation_type when :belongs_to :plural else :singular end owning_class_name.send( method ) end