Class: FormObj::ModelMapper::Attribute
- Inherits:
-
Form::Attribute
- Object
- Struct::Attribute
- Form::Attribute
- FormObj::ModelMapper::Attribute
- Defined in:
- lib/form_obj/model_mapper/attribute.rb
Instance Attribute Summary collapse
-
#model_attribute ⇒ Object
readonly
Returns the value of attribute model_attribute.
Attributes inherited from Struct::Attribute
Instance Method Summary collapse
- #array? ⇒ Boolean
-
#initialize(name, array: false, class: nil, default: nil, model_hash: false, model: :default, model_attribute: nil, model_class: nil, model_nesting: true, parent:, primary_key: nil, read_from_model: true, write_to_model: true, &block) ⇒ Attribute
constructor
A new instance of Attribute.
Methods inherited from Struct::Attribute
#default_value, #subform?, #validate_value!
Constructor Details
#initialize(name, array: false, class: nil, default: nil, model_hash: false, model: :default, model_attribute: nil, model_class: nil, model_nesting: true, parent:, primary_key: nil, read_from_model: true, write_to_model: true, &block) ⇒ Attribute
Returns a new instance of Attribute.
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/form_obj/model_mapper/attribute.rb', line 8 def initialize(name, array: false, class: nil, default: nil, model_hash: false, model: :default, model_attribute: nil, model_class: nil, model_nesting: true, parent:, primary_key: nil, read_from_model: true, write_to_model: true, &block) @model_attribute = ModelAttribute.new( array: array, classes: model_class, default_name: name, hash: model_hash, model: model, names: model_attribute, nesting: model_nesting, read_from_model: read_from_model, subform: binding.local_variable_get(:class) || block_given?, write_to_model: write_to_model, ) if block_given? new_block = Proc.new do include FormObj::ModelMapper class_eval &block end end super(name, array: array, class: binding.local_variable_get(:class), default: default, parent: parent, primary_key: primary_key, &new_block) @nested_class.model_hash = model_hash if @nested_class end |
Instance Attribute Details
#model_attribute ⇒ Object (readonly)
Returns the value of attribute model_attribute.
6 7 8 |
# File 'lib/form_obj/model_mapper/attribute.rb', line 6 def model_attribute @model_attribute end |
Instance Method Details
#array? ⇒ Boolean
33 34 35 |
# File 'lib/form_obj/model_mapper/attribute.rb', line 33 def array? @array end |