Необходимо произвести обновление двух одинаковых по логике сайтов, написанных на коленке в 2009 году.
Оба сайта принадлежат одному хозяину. Он пожелал, чтобы дизайн и логика были опять таки одинаковыми, чтобы сохранить "похожесть" сайтов.
Для разработки был выбран один шаблон
Yii2-advanced
. Сайты строю на модульной системе, все модули (контроллеры, модели, вьюшки, трейты, интерфейсы, виджеты и поведения) хранятся в
common
, там же лежат виджеты, хелперы и т.д.. В папках расположения сайтов остались только папки
config
и
web
. В папке config остались лишь небольшие различия между проектами - id и названия проектов, емэйлы админов и т.д.
На данном этапе создана практически вся логика работы, в запросах используются таблицы ввиде
{{%news}}
, БД задается в
common/config/main-local.php
.
Теперь главный вопрос:
Как быть с базой данных?
- Делать две одинаковых базы
- Делать одну базу, а в ней по две одинаковые таблицы каждого назначения
- Делать одну базу, по одной таблице каждого назначения, и создавать поле принадлежности записи к проекту - 0/1
Логично было бы выбрать второй вариант. В этом случае можно ли соединение с базой указать в
common/config/main-local.php
, а префиксы таблиц указать в конфигах каждого сайта? И второй вопрос: как поступить с
console
и
migrations
? Ведь, насколько я понимаю, миграции не используют префиксы?