method

new_column_from_field

new_column_from_field(table_name, field, definitions)
private

No documentation available.

# File activerecord/lib/active_record/connection_adapters/sqlite3/schema_statements.rb, line 141
          def new_column_from_field(table_name, field, definitions)
            default = field["dflt_value"]

            type_metadata = fetch_type_metadata(field["type"])
            default_value = extract_value_from_default(default)
            generated_type = extract_generated_type(field)

            if generated_type.present?
              default_function = default
            else
              default_function = extract_default_function(default_value, default)
            end

            rowid = is_column_the_rowid?(field, definitions)

            Column.new(
              field["name"],
              default_value,
              type_metadata,
              field["notnull"].to_i == 0,
              default_function,
              collation: field["collation"],
              auto_increment: field["auto_increment"],
              rowid: rowid,
              generated_type: generated_type
            )
          end