method

parse

Importance_0
parse(column_definition) public

No documentation

This method has no description. You can help the Ruby on Rails community by adding new notes.

Hide source
# File railties/lib/rails/generators/generated_attribute.rb, line 35 def parse(column_definition) name, type, index_type = 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 index_type, type = type, nil if valid_index_type?(type) type, attr_options = *parse_type_and_options(type) type = type.to_sym if type if dangerous_name?(name) raise Error, "Could not generate field '#{name}', as it is already defined by Active Record." end if type && !valid_type?(type) raise Error, "Could not generate field '#{name}' with unknown type '#{type}'." end if index_type && !valid_index_type?(index_type) raise Error, "Could not generate field '#{name}' with unknown index '#{index_type}'." end if type && reference?(type) if UNIQ_INDEX_OPTIONS.include?(index_type) attr_options[:index] = { unique: true } end end new(name, type, index_type, attr_options) end
Register or log in to add new notes.