forms - Symfony2 : How to add/remove entry forms for the collection field type?

标签 forms symfony symfony-forms

我有一个包含集合字段类型的表单。

但是我不知道如何在集合中添加/删除字段。

$builder        
    // ...              
    ->add('covers', 'collection', array(
          'required'     => false,
          'type'         => new BookCoverType(),
          'allow_add'    => true,
    )) 
;   

呈现的表单如下所示:

enter image description here

如何使用收藏表单字段添加新封面?

最佳答案

Symfony 提供添加/删除 JavaScript 方法/按钮或任何没有 JavaScript 的基于 session 的解决方案。

它呈现一个data-prototype属性,可以按照文档章节 How to Embed a Collection of Forms -> Allowing "new" tags with the "prototype"中所述使用该属性。

有些 bundle 提供了此功能。这些主要是 Bootstrap 包:

只需深入研究他们的代码 - 即 Braincrafted/bootstrapbundle 的 bc-bootstrap-collection.js

关于forms - Symfony2 : How to add/remove entry forms for the collection field type?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23726521/

相关文章:

javascript - NodeJS - 如何在没有框架的情况下解析多部分表单数据?

php - 如何使用 MySQL 数据填充 php/html 表单

html - 我怎样才能使这个提交按钮居中?

javascript - 如何通过Javascript动态删除表单元素?

javascript - 使用 Angularjs 从后端获取所选选项

symfony - FOSRestBundle: Controller 必须返回给定的响应(Array())

symfony - 为 InvalidConfigurationException 配置 jms_i18n_routing

php - symfony 表单事件订阅者 $event->getData() 返回 NULL

forms - 如何使用 Symfony2 表单清除字段值

php - 仅在自定义验证器字段上需要 Symfony 表单