module MongoModel::Properties::ClassMethods
Public Instance Methods
inherited(subclass)
click to toggle source
Calls superclass method
# File lib/mongomodel/concerns/properties.rb, line 37 def inherited(subclass) super subclass.properties = properties.dup end
internal_properties()
click to toggle source
# File lib/mongomodel/concerns/properties.rb, line 33 def internal_properties properties.select { |k, p| p.internal? }.map { |k, p| p } end
model_properties()
click to toggle source
# File lib/mongomodel/concerns/properties.rb, line 29 def model_properties properties.reject { |k, p| p.internal? } end
properties()
click to toggle source
# File lib/mongomodel/concerns/properties.rb, line 21 def properties @properties ||= ActiveSupport::OrderedHash.new end
properties=(properties)
click to toggle source
# File lib/mongomodel/concerns/properties.rb, line 25 def properties=(properties) @properties = properties end
property(name, type, options={})
click to toggle source
# File lib/mongomodel/concerns/properties.rb, line 15 def property(name, type, options={}) properties[name.to_sym] = Property.new(name, type, options).tap do |property| include type.mongomodel_accessors(property) if type.respond_to?(:mongomodel_accessors) end end