Heroku ejecuta rake db: migra los resultados sin cambios en la base de datos, la aplicación se reinicia varias veces
Tengo un problema con empujar mis migraciones a la base de datos de producción.
La cuestión:
He alterado el esquema de la base de datos agregando 1 columna.Lo he migrado a la base de datos de producción:
MacBook-Air-Mac: aplicación msc $ rake db: migrate RAILS_ENV = "producción" [RailsAdmin] Inicialización de RailsAdmin deshabilitada de forma predeterminada. Pase SKIP_RAILS_ADMIN_INITIALIZER = falso si lo necesita. == AddLengthColumnToBooks: migrar ========================================= - add_column ( : books,: length,: integer) -> 0.0017s == AddLengthColumnToBooks: migrated (0.0019s) ============================ ====
Pensando que el nuevo esquema de DB ahora está en producción, implementé el código que hace algunas cosas con:length
.
En producción, obtuve el siguiente error:
método indefinido `longitud = 'para #
yo siheroku rollback
y rebajó la aplicación a la última versión confiable.
ENTONCES (probablemente un poco tarde) descubrí que tengo queheroku restart
La aplicación para cargar los nuevos índices. Hice esto varias veces.
Abrí la consola y luego la comprobé.Book.column_names
, pero no hubolength
yo siheroku run rake db:migrate
seguido porheroku restart
Una vez más, sin cambios.
He intentado migrar otra columna a la base de datos de producción, pero no recibí ningún mensaje, ni siquiera el de la p.2.
¿Qué estoy haciendo mal aquí?Actualizar
Basado en las respuestas dePhilipe, Hice una serie de pasos adicionales:
git add db/schema.rb
, git add db/migrate/20130325103953_add_length_column_to_books.rb
y 'git add db / migrate / 20130401041910_add_duration_column_to_books.rb'. La respuesta de Git fue:Cambios que se deben confirmar: (use "git reset HEAD ..." para anular el escenario)
nuevo archivo: db / migrate / 20130325103953_add_length_column_to_books.rb nuevo archivo: db / migrate / 20130401041910_add_duration_column_to_books.rb modificado: db / schema.rb
Entonces lo hicegit commit -m "Updating the schema"
.
De nuevo la salida fue:
3 files changed, 168 insertions(+), 156 deletions(-)
modo crear 100644 db / migrate / 20130325103953_add_length_column_to_books.rb modo crear 100644 db / migrate / 20130401041910_add_duration_column_to_books.rb
Entonces corroheroku run rake db:migrate
. Lamentablemente no hubo señales de migraciones, simplemente obtuve:
Corriendorake db:migrate
adjunto a la terminal ... arriba, corre.5428 y eso es todo.
En la consola Rails de producción, en ejecución.Book.column_names
Todavía le falta tanto la longitud como la duración.
Ahora estoy aún más sin ideas. `