Class: RailsAdmin::Config::Model
- Inherits:
-
Object
- Object
- RailsAdmin::Config::Model
- Includes:
- Configurable, Hideable, Proxyable, Sections
- Defined in:
- lib/rails_admin/config/model.rb
Overview
Model specific configuration object.
Instance Attribute Summary collapse
-
#abstract_model ⇒ Object
readonly
Returns the value of attribute abstract_model.
-
#groups ⇒ Object
Returns the value of attribute groups.
-
#parent ⇒ Object
readonly
Returns the value of attribute parent.
-
#root ⇒ Object
readonly
Returns the value of attribute root.
Attributes included from Proxyable
Instance Method Summary collapse
- #excluded? ⇒ Boolean
-
#initialize(entity) ⇒ Model
constructor
A new instance of Model.
-
#method_missing(m, *args, &block) ⇒ Object
Act as a proxy for the base section configuration that actually store the configurations.
- #object_label ⇒ Object
Methods included from Sections
Methods included from Hideable
#hidden?, #hide, included, #show
Methods included from Configurable
#has_option?, included, #register_deprecated_instance_option, #register_instance_option
Methods included from Proxyable
Constructor Details
#initialize(entity) ⇒ Model
Returns a new instance of Model.
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/rails_admin/config/model.rb', line 26 def initialize(entity) @parent = nil @root = self @abstract_model = begin if entity.kind_of?(RailsAdmin::AbstractModel) entity elsif entity.kind_of?(Class) || entity.kind_of?(String) || entity.kind_of?(Symbol) RailsAdmin::AbstractModel.new(entity) else RailsAdmin::AbstractModel.new(entity.class) end end @groups = [ RailsAdmin::Config::Fields::Group.new(self, :default).tap {|g| g.label{I18n.translate("admin.form.basic_info")} } ] end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(m, *args, &block) ⇒ Object
Act as a proxy for the base section configuration that actually store the configurations.
83 84 85 |
# File 'lib/rails_admin/config/model.rb', line 83 def method_missing(m, *args, &block) self.send(:base).send(m, *args, &block) end |
Instance Attribute Details
#abstract_model ⇒ Object (readonly)
Returns the value of attribute abstract_model.
22 23 24 |
# File 'lib/rails_admin/config/model.rb', line 22 def abstract_model @abstract_model end |
#groups ⇒ Object
Returns the value of attribute groups.
23 24 25 |
# File 'lib/rails_admin/config/model.rb', line 23 def groups @groups end |
#parent ⇒ Object (readonly)
Returns the value of attribute parent.
24 25 26 |
# File 'lib/rails_admin/config/model.rb', line 24 def parent @parent end |
#root ⇒ Object (readonly)
Returns the value of attribute root.
24 25 26 |
# File 'lib/rails_admin/config/model.rb', line 24 def root @root end |
Instance Method Details
#excluded? ⇒ Boolean
42 43 44 |
# File 'lib/rails_admin/config/model.rb', line 42 def excluded? @excluded ||= !RailsAdmin::AbstractModel.all.map(&:model_name).include?(abstract_model.try(:model_name)) end |
#object_label ⇒ Object
46 47 48 |
# File 'lib/rails_admin/config/model.rb', line 46 def object_label bindings[:object].send object_label_method end |