Symfony动态形式在每个领域

时间:2018-09-03 08:30:55

标签: php forms symfony

我正在尝试在Symfony中进行动态制作。我有一个对象,例如X-WP-TotalPages,我想用另一个对象创建它。为此,我需要向表单中添加一些字段。 我想知道是否可能有一个动态的选择字段。我有一个像这样的表格:

Article

在这里,我的选择列表代表所有带有名称的文章。我想在此列表中有一个新选择,例如“新文章”。如果选择此选项,则必须显示一个字段。该文本字段应类似于“本文的名称”,并且当表单生效时,将创建该文章。

可以在Symfony中创建此表单吗? 我尝试了this,但没有看到如何使用选择列表来动态化表单。

1 个答案:

答案 0 :(得分:0)

免责声明:这可能不是合适/可接受的答案,但更多是我以前为解决此问题而进行的分析。

在需要这种功能的地方发生了几次。他们中的大多数最终都以JSSymfony的混合形式出现,但是没有什么通用的。

那时我做的是:

  • 创建一个自定义表单字段类型,该类型包装entity。此字段会添加一个带有回调的<button>
  • 目标twig页面呈现该字段并为JS表单字段提供<button>回调,该回调又调用某些Symfony端点来创建实体对象。有点REST,但不是真的。
  • 最后,在处理AJAX调用后,我从JSON响应中获得了ID,并将新的<option>手动插入到<select>控件中并选择了它。

对于<select>,这很容易实现,但是,如果您使用choice渲染expanded => true字段,则确实需要发挥作用围绕控件的布局以免破坏它。这可能会有点痛苦:)

希望这可以使您对该主题有所了解...