ruby on rails - column - Migración de Rails: Bigint en PostgreSQL parece estar fallando?
rails 3 migration change column type (5)
Carriles 5.0.0.1 funciona:
def change
create_table :huge do |t|
t.integer :big_bastard, limit: 8
end
end
Intentar crear una tabla con una columna bigint crea una columna de entero estándar en su lugar. ¿Qué podría estar yendo mal? No sé por dónde empezar a buscar.
Estoy usando esto en la migración:
create_table :table_name do |t|
t.integer :really_big_int, limit: 8
end
Estoy usando Ruby 1.9.2, PostgreSQL 9.0.3 y Rails 3.0.9. Solté la base de datos y ejecuté las migraciones varias veces y todavía no crea la columna Bigint.
En los carriles 4.2 + se puede utilizar como:
create_table :table_name do |t|
t.bigint :really_big_int
end
Esto funciona en Rails 4.
t.column :really_big_int, :bigint
Por alguna razón, a la tabla de creación no le gusta bigint. Sin embargo, puede hacerlo con add_columm usando el tipo de datos bigint:
add_column :table_name, :really_big_int, :bigint
Entonces no necesitas ese límite.
Pude crear un bigint usando t.column
. Esto es útil si desea controlar el orden de las columnas en la tabla.
create_table :table_name do |t|
t.string :other_column
t.column :really_big_int, :bigint
.
.
t.timestamps
end
Estoy usando Rails 3.2.12 con pg gem versión 0.15.1 (x86-mingw32).