2015-04-22 4 views
3

Я хотел бы вернуть изменения/откаты, внесенные в базу данных как часть команды миграции Phalcon devtools в случае проблемы с обновлением.Перенастройка/отката базы данных Phalcon

В файле миграции, похоже, это должно быть возможно с использованием метода public function down(). Однако я не могу заставить это работать. Нет очевидной команды отката, только «сгенерировать» и «запустить» (с Phalcon devtools 1.3.4).

Я быстро просмотрел код devtools на git, в частности код Migration.php здесь: https://github.com/phalcon/phalcon-devtools/blob/master/scripts/Phalcon/Mvc/Model/Migration.php. Есть призывы к up(), но не упоминается down().

Что было бы рекомендуемым способом для выполнения функции отката?

+4

Возможно, это не тот ответ, который вы ищете, но у нас есть десятки проектов phalcon, и мы закончили использование phinx для наших миграций для лучшей поддержки. –

+0

Я просмотрел документы phinx, и это похоже на более надежное решение. , Спасибо Дэвиду. – Anatai

+0

Что мне нравится в миграции Phalcon, так это то, что вы можете напрямую изменять базу данных, а затем автоматически генерировать миграцию. В других системах миграции, которые я видел, это наоборот: вы пишете миграции, а затем применяете их к базе данных, но автоматическое создание не производится. Есть ли у phinx автоматическое поколение? – antonienko

ответ

0

documentation упоминает

Если указать целевую версию, Phalcon будет запускать необходимые миграции, пока он не достигнет указанной версии.

Он ссылается параметр --version вы можете использовать в вашей команде миграции выполнения:

phalcon migration run --version=1.0.1 

В зависимости от текущей версии базы данных, хранящейся в .phalcon/migration-version он будет использовать либо вверх или вниз, чтобы добраться до версии 1.0.1

Например, учитывая, что команда и предполагая, что мы имеем миграции 1.0.0, 1.0.1 и 1.0.2:

  • , если версия миграции не существует, она будет запускать методы up из migrations 1.0.0 и 1.0.1
  • , если версия миграции - 1.0.2, она будет запускать метод down из миграции 1.0.2
Смежные вопросы