Преднамеренное создание дублирующих миграций - PullRequest
0 голосов
/ 16 мая 2011

Я создаю приложение, из которого пользователи могут добавлять и удалять объекты.Приложение генерирует модели, миграции и переносит базу данных.По сути, что-то вроде этого:

`rails generate model #{model_name}`
`rake db:migrate`

Когда пользователь удаляет модель, я очищаю файлы и создаю новую миграцию, которая удаляет таблицу.

На этом этапе у меня будет списокмиграций, которые похожи на:

20110515130423_create_customers.rb 20110515130445_create_houses.rb 20110515130457_drop_customers.rb

Нет проблем - все работает.Миграция через их полный набор добавляет, а затем удаляет вещи, но это нормально.

Моя проблема возникает, когда кто-то пытается добавить модель, которую он ранее добавил.Rake прерывает поговорку:

Множественные миграции имеют имя CreateCustomers

Что мне делать?Подход, который я сначала попробую, состоит в том, чтобы попытаться обнаружить подобные петли, а затем очистить все миграции.Это приведет к тому, что база данных миграций будет в странном состоянии?

Спасибо за вашу помощь - я знаю, что это немного странная ситуация; -)

1 Ответ

0 голосов
/ 16 мая 2011

Привет, я думаю, что это плохая идея: удалить таблицу, а затем заново создать ее, вы можете создать миграцию, например alter_table_customers, где вы должны внести необходимые изменения в БД

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...