Repository URL to install this package:
|
Version:
0.19.0 ▾
|
require_relative "base"
module Administrate
module Field
class Select < Field::Base
def self.searchable?
true
end
def selectable_options
values =
if options.key?(:collection)
options.fetch(:collection)
elsif active_record_enum?
active_record_enum_values
else
[]
end
if values.respond_to? :call
values = values.arity.positive? ? values.call(self) : values.call
end
values
end
def include_blank_option
options.fetch(:include_blank, false)
end
def active_record_enum?
resource.class.defined_enums.key?(attribute.to_s)
end
def active_record_enum_values
resource.class.defined_enums[attribute.to_s].map(&:first)
end
end
end
end