I'm a beginner on Synfony2 and doctrine usage. I've created two entities as following :
For EndUser Entity (extension of FOSUserBundle ):
/**
* EndUser
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="Core\CustomerBundle\Entity\EndUserRepository")
*/
class EndUser extends BaseUser {
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\ManyToMany(targetEntity="Core\GeneralBundle\Entity\Discipline", mappedBy="endusers")
*/
private $discipline;
and for discipline entity
class Discipline {
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\ManyToMany(targetEntity="Core\CustomerBundle\Entity\EndUser", inversedBy="discipline")
*/
private $endusers;
When I did "php app/console doctrine:schema:update -- force
,
EndUser
, Discipline
and discipline_enduser
tables have been created.
When I run a standard SQL request through phpmyadmin as :
select t0.*
from
discipline t0,
discipline_enduser t2
where
t2.enduser_id = 1
and
t2.discipline_id = t0.id
I obtain the expected result as the list of discipline for a specific user.
My concern is how to implement the same using the Entity with Symfony2 & Doctrine