Как вы храните MVC с несколькими базами данных? - PullRequest
1 голос
/ 16 сентября 2010

У меня есть много баз данных, которые можно разместить на одной странице. Большинство фреймворков позволяют мне только две нативно настроить их для одной базы данных. Все они предполагают, что использование для нового приложения и одной базы данных. У меня много устаревших баз данных.

Поскольку я могу настроить только одну базу данных в рамках, которые я видел ci, zend, другие, похоже, что мои дополнительные соединения с БД должны выполняться в моем контроллере.

Что я мог бы написать на заднем конце, чтобы не пускать их в контроллер. Я не хочу указывать в каждом контроллере connection = myconn и т. Д. Для каждой разрозненной базы данных.

Кроме того, существуют ли какие-либо структуры, которые позволяют использовать несколько баз данных в отображении ORM?

1 Ответ

0 голосов
/ 16 сентября 2010

Я отделяю свои контроллеры от базы данных событиями. Я запускаю некоторое абстрактное событие «SaveWhwhatComplicatedData» из моего контроллера, и другой класс (который знает обо всех моих особенностях хранения данных) прослушивает эти события и интерпретирует их. У меня это работает очень хорошо, и, хотя у меня есть только одна БД, я не вижу причин, по которым у меня не может быть больше.

Это пользовательский фреймворк, который я настроил сам, но вы можете подключиться к другому фреймворку, обернув эти «события данных» в интерфейс, который выглядит как база данных. Вы можете реализовать любой интерфейс, в котором нуждается ваша инфраструктура, с событиями данных, и при этом ваш прослушивающий класс с несколькими базами данных будет выполнять реальную работу.

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