Class: RailsAdmin::Config::Fields::Association

Inherits:
Base
  • Object
show all
Defined in:
lib/rails_admin/config/fields/association.rb

Instance Attribute Summary

Attributes inherited from Base

#abstract_model, #defined, #name, #order, #parent, #properties, #root, #section

Attributes included from Proxyable

#bindings

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#association?, #editable?, #errors, #form_default_value, #form_value, #generic_field_help, #generic_help, #initialize, #inspect, #inverse_of, #method_name, #optional, #optional=, #optional?, #parse_input, #type, #type_css_class

Methods included from Groupable

#group

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

#with

Constructor Details

This class inherits a constructor from RailsAdmin::Config::Fields::Base

Class Method Details

.inherited(klass) ⇒ Object



8
9
10
# File 'lib/rails_admin/config/fields/association.rb', line 8

def self.inherited(klass)
  super(klass)
end

Instance Method Details

#associated_model_configObject

Reader for the association’s child model’s configuration



61
62
63
# File 'lib/rails_admin/config/fields/association.rb', line 61

def associated_model_config
  @associated_model_config ||= RailsAdmin.config(association[:model_proc].call)
end

#associated_object_label_methodObject

Reader for the association’s child model object’s label method



66
67
68
# File 'lib/rails_admin/config/fields/association.rb', line 66

def associated_object_label_method
  @associated_object_label_method ||= associated_model_config.object_label_method
end

#associated_primary_keyObject

Reader for associated primary key



71
72
73
# File 'lib/rails_admin/config/fields/association.rb', line 71

def associated_primary_key
  @associated_primary_key ||= association[:primary_key_proc].call
end

#associationObject

Reader for the association information hash



13
14
15
# File 'lib/rails_admin/config/fields/association.rb', line 13

def association # rubocop:disable TrivialAccessors
  @properties
end

#foreign_keyObject

Reader for the association’s key



76
77
78
# File 'lib/rails_admin/config/fields/association.rb', line 76

def foreign_key
  association[:foreign_key]
end

#multiple?Boolean

has many?

Returns:

  • (Boolean)


96
97
98
# File 'lib/rails_admin/config/fields/association.rb', line 96

def multiple?
  true
end

#polymorphic?Boolean

Reader whether this is a polymorphic association

Returns:

  • (Boolean)


81
82
83
# File 'lib/rails_admin/config/fields/association.rb', line 81

def polymorphic?
  association[:polymorphic]
end

#valueObject

Reader for the association’s value unformatted



91
92
93
# File 'lib/rails_admin/config/fields/association.rb', line 91

def value
  bindings[:object].send(association[:name])
end

#virtual?Boolean

Returns:

  • (Boolean)


100
101
102
# File 'lib/rails_admin/config/fields/association.rb', line 100

def virtual?
  true
end