method
assert_valid_enum_definition_values
v7.2.3 -
Show latest stable
- Class:
ActiveRecord::Enum
assert_valid_enum_definition_values(values)private
No documentation available.
# File activerecord/lib/active_record/enum.rb, line 348
def assert_valid_enum_definition_values(values)
case values
when Hash
if values.empty?
raise ArgumentError, "Enum values #{values} must not be empty."
end
if values.keys.any?(&:blank?)
raise ArgumentError, "Enum values #{values} must not contain a blank name."
end
when Array
if values.empty?
raise ArgumentError, "Enum values #{values} must not be empty."
end
unless values.all?(Symbol) || values.all?(String)
raise ArgumentError, "Enum values #{values} must only contain symbols or strings."
end
if values.any?(&:blank?)
raise ArgumentError, "Enum values #{values} must not contain a blank name."
end
else
raise ArgumentError, "Enum values #{values} must be either a non-empty hash or an array."
end
end