Рабочий процесс Doctrine 2 Migrations

Я разрабатываю веб-приложение с использованием Zend Framework 2 и Doctrine 2. Я новичок в Doctrine 2 вообще и Migrations в частности. Мне было интересно, есть ли рекомендуемые рекомендации по использованию этого. Некоторые конкретные вещи, которые я ищу:

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

Большое спасибо!

Ответ 1

Doctrine имеет собственную библиотеку для переноса, которая включает также пакет Symfony.

Для Zend, вероятно, есть некоторый пакет (возможно, ищите Github чуть больше)

Что касается ваших конкретных вопросов:

  • Ничего особенного. Основной рабочий процесс хорошо описан в документации по пакету Symfony. Мы используем его так же, как и в другой структуре.

  • Да, поэтому у каждого разработчика есть полностью действующая система. Для тестов мы используем только данные с минимальными требуемыми данными.

  • Он управляется этим пакетом.

Ответ 2

Модуль ORM доктрины для ZF2 (DoctrineORMModule) имеет встроенную поддержку миграции Doctrine ORM. Там очень короткая запись в документации о том, как ее настроить. Затем вы можете получить доступ к командам миграции (генерировать, переносить и т.д.) Через интерфейс CLI, который предоставляет модуль (vendor/bin/doctrine-module)

Как и в моем личном рабочем процессе, я обычно добавляю данные инициализации или предпопуляции - материал, из которого вы первоначально заселили новую установку, - в оснастку базы данных (что Doctrine ORM также поддерживает и есть модуль ZF2 для).