2013-08-05 83 views
0

我只是想呈现一个简单的文本区域,我从一个实体嫩枝渲染的textarea

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

{{com.recom}}

收到它返回我这个错误消息

键“RECOM”为阵列与键 “0” 不存在PreditBundle:理事会全国:在line verconsejo.html.twig 3

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

我也加我的控制器操作

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)); 

} 

谢谢您的回答

回答

0

到底是比这更简单的,对我来说,使用

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

,然后工作直接得到recomendation

$con  = $consejo->getRecomendacion(); 

所以对我来说,它的工作使用findOneByHijo();

0

渲染方法提供了一个“骗子”的变量,并尝试访问“COM”变量。如果可能的话,也可以使用getters。因此,尝试:

{{con.getRecom}} or {{con.recom}} 
+0

同样的错误,即使使用{{con.getRecom}}或{{con.recom}}领域RECOM是这样写的是,在DB。老实说,我真的不理解的错误消息 – Droyo

+0

您可以用\原则\ COMMON \的Util \调试检查::转储($理事会全国); ? – Flip

0

使用下面的语句:

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

你得到一流的理事会全国项目数组。 所以在树枝模板中你会得到一个数组。您可以通过使用得到正确的值:

{{con[0].getRecom}} 

,或者例如:

{% for conObj in con %} 
    {{conOjb.getRecom}} 
{% endfor %}