Я новичок в рельсах и не уверен, что полностью понимаю миграцию. Есть ли способ запустить их без потери данных таблицы? Кроме того, плохо ли возиться со старыми миграциями для изменения структуры таблиц, или вы просто должны создавать новые?
RoR-миграции и данные
Ответы (2)
В версии 0 в базе данных ничего нет. Итак, как вы думаете, вы сможете хранить данные? :)
Обычно не рекомендуется редактировать старые миграции, потому что вам придется применять их повторно. Гораздо проще создать новую миграцию и развернуть ее.
Миграции — это не что иное, как способ инкапсулировать используемую базу данных, это просто рубиновый код. Подробнее читайте здесь: http://guides.rubyonrails.org/migrations.html Миграция, которая создает предполагается, что таблица удаляет таблицу, когда та же миграция возвращается (: вниз). Поскольку он удаляет таблицу, нет возможности сохранить данные. После того, как миграция выполнена для таблицы, и вам все еще нужно изменить структуру, вы всегда должны создавать новый файл миграции для использования генератора: rails g migration AddColumnNameToTableName