Mam kolejny problem w nauce.
Dodałem do Symfony 2 FOS/UserBundle. Skonfigurowałem użytkowników oraz grupy. Relacje zrobione.
W testowym kontrolerze pobieram listę postów
public function indexAction() { $em = $this->getDoctrine()->getManager(); $posts = $em->getRepository('MyFrontendBundle:Posts')->findAll(); }
W szablonie wyświetlam treść postu, username z tabeli users, ale jak wyświetlić nazwę grupy?
Szukam w internecie i nie mogę znaleźć ;/
//My/FrontendBundle/Entity/Posts /** * @ORM\ManyToOne(targetEntity="My\UserBundle\Entity\Users", inversedBy="posts") * @ORM\JoinColumn(name="user_id", referencedColumnName="id") */ private $userId;
//My/UserBundle/Entity/Users /** * @ORM\ManyToMany(targetEntity="My\UserBundle\Entity\Groups") * @ORM\JoinTable(name="fos_user_group", * joinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id")}, * inverseJoinColumns={@ORM\JoinColumn(name="group_id", referencedColumnName="id")} * ) */ protected $groups; /** * @ORM\OneToMany(targetEntity="My\FrontendBundle\Entity\Posts", mappedBy="userId") */ protected $posts;
Edit:
Udało mi się dzięki dump() dojść do takiego czegoś
{{ post.userId.groups.owner.groups.0.name }}
Jest może jakaś krótsza droga?