2010-09-16 2 views
1

J'ai beaucoup de bases de données à frapper et mettre dans une page. La plupart des frameworks ne me permettent que deux natifs de les configurer pour une base de données. Ils supposent tous que l'utilisation est pour une nouvelle application et une base de données. J'ai beaucoup de bases de données existantes.Comment gardez-vous MVC avec plusieurs bases de données?

Comme je ne peux configurer qu'une base de données dans des frameworks, j'ai vu ci, zend, d'autres, il semble que mes connexions db supplémentaires doivent avoir lieu dans mon contrôleur.

Que pourrais-je coder sur l'extrémité arrière pour les garder hors du contrôleur. Je ne veux pas avoir à mettre en connexion = myconn, etc. dans chaque contrôleur pour chaque base de données disparate.

De même, existe-t-il des cadres permettant plusieurs bases de données dans le mappage ORM?

Répondre

0

Je sépare mes contrôleurs de ma base de données avec des événements. Je tire un événement abstrait "SaveWhateverComplicatedData" de mon contrôleur, et une classe différente (qui connaît toutes mes spécificités de stockage de données) écoute ces événements et les interprète. Cela fonctionne très bien pour moi, et même si je n'ai qu'un seul DB, je ne vois aucune raison de ne pas en avoir plus.

Il s'agit d'un framework personnalisé que j'ai configuré moi-même, mais vous pouvez vous connecter à un autre framework en enveloppant ces "événements de données" dans une interface qui ressemble à une base de données. Vous pouvez implémenter n'importe quelle interface dont votre framework a besoin avec les événements de données, tout en ayant votre classe d'écoute de plusieurs bases de données en train de faire le vrai travail.

Questions connexes