method
parse
v4.1.8 -
Show latest stable
- Class:
Rails::Generators::GeneratedAttribute
parse(column_definition)public
No documentation available.
# File railties/lib/rails/generators/generated_attribute.rb, line 14
def parse(column_definition)
name, type, has_index = column_definition.split(':')
# if user provided "name:index" instead of "name:string:index"
# type should be set blank so GeneratedAttribute's constructor
# could set it to :string
has_index, type = type, nil if INDEX_OPTIONS.include?(type)
type, attr_options = *parse_type_and_options(type)
type = type.to_sym if type
if type && reference?(type)
references_index = UNIQ_INDEX_OPTIONS.include?(has_index) ? { unique: true } : true
attr_options[:index] = references_index
end
new(name, type, has_index, attr_options)
end