繁体   English   中英

Symfony2嵌入式表单-获取实体字段

[英]Symfony2 embedded form - get entity field

我有一个具有多对多关联的实体。
我想做的是:

  • 为主要实体创建表单
  • 嵌入关联实体

我已经能够做到以上两点,但是现在我不知道如何检索关联的实体字段。

我的课程是GalleryImmagine Immagine具有3个属性, imageimageNamefile

在我的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标签中显示另一个Immagine字段,例如imageName 我已经尝试了很多方法,但是我做不到...

有什么建议吗?

您应该通过使用集合类型而不是像您那样的实体类型来嵌入关联的实体。

->add('immagini','collection',array('type'=>new ImageType(),'multiple'=>...,))

因此,您需要实现一个新的表单类,将其命名为您喜欢的名称。 图像类型()。 在该类类型中,添加您需要显示的任何表单类型(属性),例如。

->add('imageName','text')
->add(...

比起您,您可以从树枝代码中进行迭代并显示它。

看看嵌入文档的基本表单: http : //symfony.com/doc/current/cookbook/form/form_collections.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM