0

我只想渲染一个从实体收到的简单文本区域

<h1>Consejo para el hijo {{ hijo.nombre }}</h1>

{{com.recom}}

它返回给我这个错误信息

第 3 行的 PreeditBundle:Consejo:verconsejo.html.twig 中不存在键为“0”的数组的键“recom”

这真的没有意义,因为在其他树枝上我可以写这样的东西。

我还添加了我的控制器动作

public function  verconsejoAction($id)
{
    $em = $this->get('doctrine')->getEntityManager();
    $consejo = $em->getRepository('PreditBundle:Consejo')->findByHijo($id);
    $hijo    = $em->getRepository('PreditBundle:Hijo')->find($id);
    return $this-> render('PreditBundle:Consejo:verconsejo.html.twig', array('con'=>$consejo , 'hijo'=>$hijo));

}

感谢您的回答

4

3 回答 3

0

您的渲染方法提供了一个“con”变量,而您尝试访问一个“com”变量。如果可能的话,使用吸气剂可能会更好。所以试试:

{{con.getRecom}} or {{con.recom}}
于 2013-08-05T10:17:44.593 回答
0

通过使用此语句:

$consejo = $em->getRepository('PreditBundle:Consejo')->findByHijo($id);

你会得到一组 Consejo 类的项目。所以在树枝模板中你得到一个数组。您可以通过使用获得正确的值:

{{con[0].getRecom}}

或者例如:

{% for conObj in con %}
    {{conOjb.getRecom}}
{% endfor %}
于 2013-08-06T01:16:24.033 回答
0

最后比这更简单,对我来说它可以使用

$consejo = $em->getRepository('PreditBundle:Consejo')->findOneByHijo($id);

然后直接得到推荐

$con     = $consejo->getRecomendacion();

所以对我来说它使用findOneByHijo();

于 2013-08-06T07:44:21.713 回答