Question : Comment mettre en application la couche de service de cadre de Zend et l'ACL ?

J'avais lutté avec la meilleure manière de mettre en application une couche de service dans le cadre de Zend aussi bien qu'intégrer cette couche de service avec un ACL dynamique. Je me rends compte que l'exécution dépend de la logique d'affaires actuelle, mais je recherche quelques recommandations générales. J'établis une application de ventes avec les composants suivants : le

- le
d'ordres d'achat (le vendeur crée et contrôle des ordres d'achat) - le
de ventes (le vendeur produit des ventes) - le
d'entrepôt (recevoir l'équipement des ordres d'achat) - auditer (équipement d'audit des ordres d'achat, des ventes retournées, etc.) le
- etc., etc.

Below est ma structure courante :

- annuaire de modèles sous /application pour stocker l'entité et le classes
de la doctrine 2.0 de dépôt - chaque module stocké sous /application/modules avec ses propres formes, services, contrôleurs, vues. Noter que les modèles sont seulement stockés au niveau supérieur, car je ne suis pas sûr comment configurer les entités de la doctrine 2.0 à résider dans différentes questions de folders.

My sont comme suit :

1. Je ne suis pas sûr using des modules est la meilleure approche. Certains groupes de personnes auront accès à certains modules dans l'application, ainsi c'est correcte d'un point de vue de permissions. Cependant, je trouve que cela avoir des services dans chaque module est embrouillant, comme la plupart de ces services sont employées à travers tous les modules. Quelle est une bonne approche à structurer cette application ?

2. Est-ce qu'en employant un modèle de couche de service, je devrais avoir un service pour chaque modèle ? Que diriez-vous de des services qui ne pas faire correspondent à un modèle donné ?

3. Vaudrait-il mieux d'organiser toutes les formes, services à un niveau global avec les modèles ?

4. En conclusion, quelle est la meilleure structure pour des permissions dans ce cas-ci ? Au cas où je mettre l'ACL vers le bas dans les classes de service ? Ou est-ce que je devrais commander l'accès au niveau de contrôleur ?

Thank vous pour tout suggestions.

class= de

Réponse : Comment mettre en application la couche de service de cadre de Zend et l'ACL ?

Bonjour somersetit,

1 couche de service du _ A dans votre cas devrait fournir une façade mince à votre modèle de domaine pour fournir une interface pour vos clients de couche de service. Comment vous organisez vos objets de modèle de domaine incombe vraiment à vous mais il semblerait raisonnable de le maintenir simple comme possible.

le _ 2 très souvent là est celui à on traçant entre ces derniers et encore ceci faciliterait votre goût.

_ 3 que j'aime using les formes que de phase au niveau supérieur de l'application et ont écrites classe qui peut dynamiquement produire de ces derniers pour des modèles basés sur des passages de table et l'information stockée au sujet de eux.

le _ 4 je regarde l'ACL comme manière de mettre en application des principes économiques au-dessus des ressources pour l'accès par des clients (un modèle).  Maintenir la couche de service aussi mince comme possible revient à mon premier point. Vous appelez l'ACL de vos contrôleurs pour déterminer si un client qui a un rôle assigné a la permission required à la ressource et à l'acte priés convenablement,

J'espère que ceci aide.

Joseph Melnick  
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us