class RailsAdmin::Config::Fields::SingularAssociation

Public Instance Methods

collection(scope = nil) click to toggle source
# File lib/rails_admin/config/fields/singular_association.rb, line 21
def collection(scope = nil)
  if associated_collection_cache_all || scope
    super
  else
    [[formatted_value, selected_id]]
  end
end
form_value() click to toggle source
# File lib/rails_admin/config/fields/singular_association.rb, line 45
def form_value
  form_default_value.nil? ? selected_id : form_default_value
end
multiple?() click to toggle source
# File lib/rails_admin/config/fields/singular_association.rb, line 29
def multiple?
  false
end
parse_input(params) click to toggle source
# File lib/rails_admin/config/fields/singular_association.rb, line 37
def parse_input(params)
  return unless nested_form && params[method_name].try(:[], :id).present?

  ids = associated_model_config.abstract_model.parse_id(params[method_name][:id])
  ids = ids.to_composite_keys.to_s if ids.respond_to?(:to_composite_keys)
  params[method_name][:id] = ids
end
selected_id() click to toggle source
# File lib/rails_admin/config/fields/singular_association.rb, line 33
def selected_id
  raise NoMethodError # abstract
end
widget_options() click to toggle source
# File lib/rails_admin/config/fields/singular_association.rb, line 49
def widget_options
  {
    xhr: !associated_collection_cache_all,
    remote_source: bindings[:view].index_path(associated_model_config.abstract_model, source_object_id: abstract_model.format_id(bindings[:object].id), source_abstract_model: abstract_model.to_param, associated_collection: name, current_action: bindings[:view].current_action, compact: true),
    scopeBy: dynamic_scope_relationships,
  }
end