2009-11-24 4 views
3

J'ai ici une application qui grandit de plus en plus. L'adresse est la suivante: www.aquitanda.com [portugais brésilien].Gestion de grandes applications avec CakePHP

Fondamentalement, c'est un site Web où vous pouvez acheter et vendre des choses sur vos propres, ce qui signifie que les gens peuvent créer leurs propres boutiques en ligne.

J'ai, pour ce projet, 4 grandes "interfaces". L'un d'eux est l'interface Commom, où n'importe qui peut naviguer, s'inscrire en tant qu'utilisateur ou en tant que magasin et ainsi de suite. J'ai une autre interface où les gens gèrent leurs préférences, leur profil et ainsi de suite, c'est l'interface utilisateur. Il y a l'interface de gestion du magasin, où les gens ajoutent des produits, des catégories, vérifient les commandes et ainsi de suite. Le dernier est l'interface des magasins.

Cela signifie que j'ai beaucoup de code qui partagent mêmes modèles et mêmes contrôleurs, mais mes contrôleurs sont énormes et se maintanence devient de plus en plus difficile à faire.

Voir, j'ai modèles de graisse. Ce n'est pas parce que les actions obtiennent beaucoup de code. C'est juste parce que j'ai beaucoup d'actions.

Alors je me suis déplacé mon code en plug-ins, mais ne se sent pas très « droit » me plus que je veux utiliser des plugins pour d'autres choses au lieu d'actions interfaces.

est-t-il une suggestion afin d'organiser ce mieux? Devrais-je simplement utiliser des préfixes et laisser mes contrôleurs énormes? Dois-je m'en tenir aux plugins [peut-être avec des chemins personnalisés]? La v.1.3 introduira-t-elle quelque chose de nouveau à ce sujet? Devrais-je attendre la version stable? D'autres alternatives?

Merci;)

+0

quand vous dites que vous avez beaucoup de "code qui partagent les mêmes modèles et les mêmes contrôleurs"? contrôleurs qui partagent des modèles est cool, mais vous ne savez pas ce que vous entendez par code qui partagent les mêmes contrôleurs? pourriez-vous créer des composants contenant une logique partagée par les contrôleurs? – neilcrookes

+0

Ce que j'essayais de dire, c'est que beaucoup de code partagent le même "contrôleur" de contrôleur ... il y a beaucoup d'actions qui appartiennent à un contrôleur donné. Je ne sais pas si cela rend les choses plus claires. –

+0

Utilisez-vous des composants? – powtac

Répondre

1

Je ne pense pas que les plugins sont ce que vous voulez qu'ils sont autonomes. Si vos modèles sont déjà gros et que vous souhaitez réduire la logique de votre contrôleur, l'étape suivante consistera à identifier si un code de contrôleur devrait appartenir à un composant.

+0

Oui, déplacez le code du plugin dans les composants. – powtac

+0

D'accord. Cependant, à titre d'avertissement, il semble également que vous ayez juste une tonne de lignes de code. À un moment donné, vous devrez gérer de gros contrôleurs: si vous avez 300 actions différentes pour un seul contrôleur, vous ne pouvez pas vraiment faire beaucoup pour réduire la complexité des sources, sauf essayer ce que tout le monde a. –

+0

Et qu'est-ce que tout le monde a essayé? –

Questions connexes