Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 16-11-2012 11:57:57

manuclin
Nouveau membre
Date d'inscription: 13-02-2012
Messages: 5

Doctrine - Appeler une Entity dans une autre

Bonjour à tous,

Depuis quelques jours, je consulte avec plaisir votre forum.
Le ton est chaleureux et les réponses intéressantes.

Mon problème est :
J'ai une entity doctrine qui dans une de ses méthodes doit appeler une autre entity  :

Code:

namespace Application\Entity;

use Doctrine\ORM\Mapping as ORM;
use Application\Entity\EntityA;

class EntityB
{
   // Les attributs
   protected $unAttributDeB

   public function setUnAttibutDeB($val)
   {
         // ??? je ne sais pas comment obtenir cela => $entityA->find($val);
         // afin de faire ceci
         $this->unAttributDeB = $entityA->getUnAttributDeA();
 
   }
}

Pouvez-vous m'expliquer comment procéder ?

Dernière modification par manuclin (16-11-2012 11:59:11)

Hors ligne

 

#2 16-11-2012 14:30:25

Orkin
Administrateur
Lieu: Paris
Date d'inscription: 09-12-2011
Messages: 1261

Re: Doctrine - Appeler une Entity dans une autre

Salut, oula ça fonctionne pas du tout comme ça qu'il faut faire.

Une entité doctrine sert uniquement à faire le lien entre ta base et une classe php via des annotations tu peux définir des relations entre les entités (de la même manière qu'entre des tables en fait).
Du coup si tu as besoin de faire des jointures à chaque requêtes ça se fait via annotation et doctrine fait les jointures tout seul soit tu utilises les repository pour écrire tes propres requêtes en DQL ou SQL avec les jointures qui vont bien pour récupérer les informations dont tu as besoin.

Hors ligne

 

#3 16-11-2012 16:39:56

manuclin
Nouveau membre
Date d'inscription: 13-02-2012
Messages: 5

Re: Doctrine - Appeler une Entity dans une autre

Merci beaucoup pour ta réponse rapide Orkin.

Je replonge immédiatement dans la doc de doctrine.

Hors ligne

 

#4 16-11-2012 17:15:36

bakura
Administrateur
Date d'inscription: 30-01-2010
Messages: 353

Re: Doctrine - Appeler une Entity dans une autre

Effectivement, ce n'est pas la route à suivre manuclin. La règle absolue : ne jamais faire de requête directement depuis une entité. Dans ton cas, l'entité doit être chargée dans un service, par exemple, et passée à l'entité B.

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages