我有一个具有多对多关联的实体 我想做的是:
我已经能够完成上述两点,但现在我无法弄清楚如何检索关联的实体字段。
我的课程是图库和依玛金。 依玛金有3个属性,图片,图片名称和文件。
在我的GalleryType buildForm函数中,我这样做:
->add('immagini', 'entity', array(
'class' => 'MySiteBundle:Immagine',
'property' => 'image',
'multiple' => true,
'expanded' => true
))
现在,在我的edit.html.twig模板中,如果我写这个
{% for img in edit_form.immagini %}
<li>
{{ form_widget(img, {'attr': {'style': 'vertical-align: top'}} ) }}
{{ form_label(img, null, { 'label_attr': {'style': 'display: inline'}} ) }}
</li>
{% endfor %}
...并且在图库编辑页面内嵌入图像的结果是正确的,效果很好
现在,我要做的是在同一个li标签中显示另一个依玛金字段,让我们说 imageName 。 我尝试了很多方法,但我无法做到......
有什么建议吗?
答案 0 :(得分:0)
您应该使用集合类型嵌入关联的实体,而不是像您一样使用实体类型。
->add('immagini','collection',array('type'=>new ImageType(),'multiple'=>...,))
所以,你需要实现一个新的表单类,调用它你喜欢的,例如。图像类型()。在该类类型中添加您需要显示的任何表单类型(属性),例如
->add('imageName','text')
->add(...
您可以从twig代码中迭代并显示它。
看看基本表单嵌入文档: http://symfony.com/doc/current/cookbook/form/form_collections.html