class RailsAdmin::Config::Fields::Types::PolymorphicAssociation
Public Instance Methods
associated_collection(type)
click to toggle source
# File lib/rails_admin/config/fields/types/polymorphic_association.rb, line 44 def associated_collection(type) return [] if type.blank? config = RailsAdmin.config(type) config.abstract_model.all.map do |object| [object.send(config.object_label_method), object.id] end end
associated_model_config()
click to toggle source
# File lib/rails_admin/config/fields/types/polymorphic_association.rb, line 52 def associated_model_config @associated_model_config ||= association[:model_proc].call.map{|type| RailsAdmin.config(type) }.select{|config| !config.excluded? } end
polymorphic_type_collection()
click to toggle source
# File lib/rails_admin/config/fields/types/polymorphic_association.rb, line 56 def polymorphic_type_collection associated_model_config.map do |config| [config.label, config.abstract_model.model.name] end end
polymorphic_type_urls()
click to toggle source
# File lib/rails_admin/config/fields/types/polymorphic_association.rb, line 62 def polymorphic_type_urls types = associated_model_config.map do |config| [config.abstract_model.model.name, config.abstract_model.to_param] end ::Hash[*types.collect { |v| [v[0], bindings[:view].index_path(v[1])] }.flatten] end
value()
click to toggle source
Reader for field’s value
# File lib/rails_admin/config/fields/types/polymorphic_association.rb, line 73 def value bindings[:object].send(association[:name]) end