![]() |
1
5
默认情况下,在基本表单主题中:
对于自定义复合表单:
除非您在此处进行了更改,否则您看到的DIV应该来自模板的一个或另一个位。 然而,在您的特定示例中,如果 表单用户行 如果定义了,则不使用第一位,并且如果 表单用户小部件 如果定义了,则不使用最后一位。 回到你的问题。您的问题是: “我如何更改主题,以便所有自定义类型都不使用默认的form_row模板包装?” 我认为这是一个问题:您希望您的TOP表单(包含所有子表单的表单)都有一种通用的呈现方式,在部分中。每个部分都将包含在一个具有class=“form group”的DIV中。您可能想加入一些额外的渲染操作,但我将仅限于此,以保持简单。 然后,您需要做的是创建一个特殊的表单类型,并使所有TOP表单继承自该新表单类型。例如:
…和继承形式:
正如您所看到的,表单主题继承不需要使用PHP继承。 模板主题化(我甚至可以这样说吗?),如果没有为 我的表单(_F) ,Symfony将理解此处使用的默认表单主题是 顶部表单 ,您可以这样定义:
我应该补充一点,这是我已经遇到并解决的问题。告诉我这对你有什么好处。 编辑: 综上所述,您需要做的是:
|
![]() |
2
3
理论上,如果您覆盖
并注册表单主题:
|
![]() |
3
3
我通常通过手动呈现嵌套表单的字段来解决这个问题:
也许这不是最优雅的解决方案,但它对我很有效,我还没有找到一个优雅的解决方法。 |
![]() |
4
1
Bootstrap 3.3.4我最终做到了这一点。 它们是其中的关键部分:
完整模板。
|
|
5
0
也许这不是一个优雅的解决方案,但对我来说很有效,因为我也在努力寻找解决方案。 例如:
|
|
6
-1
尝试使用form_themes。 首先,在父模板中定义表单主题:
顺便用正确的名称替换BundleName、ControllerName和somesubform。 然后使用以下命令进行渲染:
|
![]() |
G. Vaurs · 如何在Symfony中创建动态级联表单? 7 年前 |
![]() |
famas23 · 无法访问自定义表单类型的属性 7 年前 |
![]() |
Aliance · 将约束传递给symfony集合类型 7 年前 |
![]() |
C0ol_Cod3r · Symfony 2单选按钮布尔问题? 9 年前 |
![]() |
tirenweb · 使用原则覆盖已经生成的表单:生成:表单? 9 年前 |