2016-11-25 1 views
0

У меня есть сущность пользователя и еще один комментарий к сущности. Комментарий объекта имеет внешний ключ: user_id - целое число, которое является первичным ключом в объекте пользователя, у пользователя объекта также есть имя столбца. Я использую это:Как я могу достичь записей, зная внешний ключ?

$comments = $em->getRepository('AppBundle:Comment')->findAll(); 

, чтобы получить все комментарии, то я использую 'comments' => $comments, отправить данные на сучок, а затем в веточке:

{% for comment in comments %} 
    {{ comment.id }} 
    {{ comment.comment }} 
{% endfor %} 

comment.id будет писать user_id, но я хочу вместо user_id Я бы получил имя пользователя. Как я могу это сделать?

+1

Что ваш комментарий и пользовательские объекты выглядят как (я имею в виду код)? Точка @adashbob верна, вы можете сделать сопоставление, но это должно быть больше, чем просто то, что он показал. –

ответ

2

Если вы правильно определить отношения в Comment сущности как exmple:

/** 
    * @ORM\ManyToOne(targetEntity="YourBundle\Entity\User") 
    */ 
private $user; 

Тогда вы можете получить имя пользователя по:

{{ comment.user.name }} 
+0

ManyToOne было бы лучшим отношением отображения в этом случае. Я не думаю, что пользователь может сделать только один комментарий – OlivierC