FulePHP - это среда HMVC, которая позволяет «модулям» иметь собственную структуру MVC. Фреймворк также предоставляет удобный инструмент под названием «миграция», который элегантно разрешает конфликты версий базы данных и кода (во время разработки).
Тем не менее, инструмент миграции является приложением. Управление пакетом DB Schemae & Fixtures не поддерживается.
Я придумал эти альтернативные решения:
- Соберите и протестируйте каждый модуль с его зависимостью как проект FuelPHP, так что «миграции» могут использоваться исключительно. Требуется множество конфигураций со строгой политикой ветки (dev / production).
- Проверять и связывать файлы в «APPPATH / modules / [имя_модуля] / миграции» с «миграциями» после обновления или установки модулей.
- Устаревший способ: вручную сохранять файлы sql для схемы и фиксации БД, если таблицы не были найдены во время выполнения.
Объединение решений 1 и 2 кажется разумным, но потребовало бы огромного количества работы. Есть ли какой-нибудь элегантный способ сделать это или перенести поддержку миграции на модули?
Заранее спасибо.
** отредактировано, «модули» должны быть там, где я ищу, а не «пакеты»
Короче говоря, я бы хотел, чтобы мой каталог модулей выглядел так:
- классы
- 1034 * конфигурация *
- Миграция
- языки
- вид