Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour!
Me revoila.
Ce n'est pas vraiment un problème bloquant, mais plutôt une perte de productivité.
J'utilise le commandeLine tool de doctrine pour généré mes entité, outils fort puissants en terme de gain de temps!
Son utilisations est ultra simple quand il s'agit de placé toute les entité dans un seul module, mais si je veut les répartir la c'est la grosse prise de tête.
j'utilise ces deux commande:
[lang=shell]./vendor//bin/doctrine-module orm:convert-mapping --namespace="MonModule\\Entity\\" --force --from-database --filter="table1" --filter="table2" --filter="table3" annotation ./module/MonModule/src/
suivie de
[lang=shell]./vendor/bin/doctrine-module orm:generate-entities ./module/MonModule/src/ --generate-annotations=true --filter="table1" --filter="table2" --filter="table3"
dans le fichier de config du module:
[lang=php] <?php namespace MonModule; return array( 'doctrine' => array( 'driver' => array( __NAMESPACE__.'_driver' => array( 'class' => 'Doctrine\ORM\Mapping\Driver\AnnotationDriver', 'cache' => 'array', 'paths' => array(__DIR__ . '/../src/'.__NAMESPACE__.'/Entity') ), 'orm_default' => array( 'drivers' => array( __NAMESPACE__.'\Entity' => __NAMESPACE__.'_driver', ), ), ), ) );
(j'utilise le namespace pour pouvoir copier coller le même code dans chaque module ^^)
Ce qui m’embête, c'est de toujours devoir rajouter l'options filter a chaque commande, c'est parfait pour faire des erreur, surtout si on doit répartir 50 table dans une 10aine de module!
Si j'enlève l'option filter de la commande omr:generate-entities, il me copie toute les table des autres modules dans le src du module courant pour les quel j'ai déjà généré les annotations - ce même avec l'options updates-entities et regenerates-entities.
N'y a t'il pas un moyen de configurer les table concerné par le module dans son fichier de config et qui permettrai du coup de ne lancé qu'une commande ou presque pour tout les module??
Dernière modification par Splyf (05-02-2014 13:13:59)
Hors ligne
Re,
Bon il semblerai que je fasse une grosse erreur de conception quelque part...
Je regroupe mes entité dans des module, on va dire par "thematique"
par exemple
Module User qui contient tout ce qui cerne les table utilisateurs
Module Etablissement qui contient tout ce qui concerne des établissement (des restaurants entre autres)
Module Geo contenant des département, des villes, ect et leur coordonné
Module Media pour tout les fichiers utilisateurs (images, pdf, etc)
sauf que tout sa est complêtement relié, aucune table ou presque n'est coupé du reste sans jointure.
Du coup, pour certain module, même si je filtre qu'une seul table pour la mettre dans mon module, il me génère quasiment toute les entité, ou alors des entité qui non rien a voir avec la thématique du module!
Je n'est pas encore trouvé ce qui lui fait décidé de suivre une jointure ou pas car parfois le filtre marche très bien magré une jointure manyToOne...
Comprend pô...
EDIT: en plus avec cette façons de répartir les table dans différent module, forcément je doit corriger les chemin des assoc des entité d'ORM vers les bon module..devrai-je finalement ne faire qu'un module pour toute les entité ? :s
Dernière modification par Splyf (05-02-2014 14:30:37)
Hors ligne
Pages: 1