class NinjaModel::Associations::Builder::SingularAssociation
Public Instance Methods
constructable?()
click to toggle source
# File lib/ninja_model/associations/builder/singular_association.rb, line 7 def constructable? true end
define_accessors()
click to toggle source
Calls superclass method
NinjaModel::Associations::Builder::Association#define_accessors
# File lib/ninja_model/associations/builder/singular_association.rb, line 11 def define_accessors super define_constructors if constructable? end
Private Instance Methods
define_constructors()
click to toggle source
# File lib/ninja_model/associations/builder/singular_association.rb, line 31 def define_constructors name = self.name model.redefine_method("build_#{name}") do |*params, &block| association(name).build(*params, &block) end model.redefine_method("create_#{name}") do |*params, &block| association(name).create(*params, &block) end model.redefine_method("create_#{name}!") do |*params, &block| association(name).create!(*params, &block) end end
define_readers()
click to toggle source
Calls superclass method
NinjaModel::Associations::Builder::Association#define_readers
# File lib/ninja_model/associations/builder/singular_association.rb, line 18 def define_readers super name = self.name model.redefine_method("#{name}_loaded?") do ActiveSupport::Deprecation.warn( "Calling obj.#{name}_loaded? is deprecated. Please use " \ "obj.association(:#{name}).loaded? instead." ) association(name).loaded? end end