Twitter bootstrap 如何在Symfony2表单中使用TWIG引导模板块
我不理解如何使用bootstrap\u 3\u horizontal\u layout.html.twig中定义的块来定制表单 到目前为止,我做到了这一点,它的工作很好Twitter bootstrap 如何在Symfony2表单中使用TWIG引导模板块,twitter-bootstrap,symfony,twig,Twitter Bootstrap,Symfony,Twig,我不理解如何使用bootstrap\u 3\u horizontal\u layout.html.twig中定义的块来定制表单 到目前为止,我做到了这一点,它的工作很好 {% form_theme form 'bootstrap_3_horizontal_layout.html.twig' %} <div class="well"> {{ form_start(form) }} {{ form_errors(form) }} {{ form_row(for
{% form_theme form 'bootstrap_3_horizontal_layout.html.twig' %}
<div class="well">
{{ form_start(form) }}
{{ form_errors(form) }}
{{ form_row(form.title, {'label': 'Titre'}) }}
{{ form_row(form.content, {'label': "Content"}) }}
...
{{ form_rest(form) }}
{{ form_end(form) }}
</div>
它不工作。在第一个示例中调用的函数(
form\u start
,form\u errors
等)是在细枝扩展()中定义的函数,使用定义的主题生成输出。因此,bootstrap\u 3\u horizontal\u layout.html.twig
中定义的块由这些函数调用(它们是Symfony表单视图组件的扩展),您不能自己直接“调用”这些块
如果您试图自定义表单的输出,最简单的方法是创建您自己的表单主题,该主题扩展自基本主题:
{% extends 'bootstrap_3_horizontal_layout.html.twig' %}
{% block textarea_widget %}
{# your code #}
{% endblock %}
这在中进行了描述
如果您试图直接调用小部件,最好更改传递给渲染器的表单字段的类型。中提供了不同的可用类型。您选择的类型定义了将从主题中呈现哪个块-因此,如果您将字段类型更改为
textarea
,则将呈现textarea\u小部件
(首先是textarea\u行
)。如果您需要对此进行概述,文档应该会帮助您。您在第一个示例中调用的函数(form\u start
,form\u errors
等)是在细枝扩展()中定义的函数,它们使用定义的主题生成输出。因此,bootstrap\u 3\u horizontal\u layout.html.twig
中定义的块由这些函数调用(它们是Symfony表单视图组件的扩展),您不能自己直接“调用”这些块
如果您试图自定义表单的输出,最简单的方法是创建您自己的表单主题,该主题扩展自基本主题:
{% extends 'bootstrap_3_horizontal_layout.html.twig' %}
{% block textarea_widget %}
{# your code #}
{% endblock %}
这在中进行了描述
如果您试图直接调用小部件,最好更改传递给渲染器的表单字段的类型。中提供了不同的可用类型。您选择的类型定义了将从主题中呈现哪个块-因此,如果您将字段类型更改为
textarea
,则将呈现textarea\u小部件
(首先是textarea\u行
)。如果您需要这方面的概述,文档应该会帮助您。多亏了John Noel,我找到了答案。
总结一下,如果有人想做同样的事情
在Symfony2表单中使用bootstrap3预先定义的布局
1-声明要使用的表单主题
在你的小枝模板中
{% form_theme form 'bootstrap_3_horizontal_layout.html.twig' %}
或全局搜索/app/config/config.yml中的所有表单
# Twig Configuration
twig:
form:
#resources: ['bootstrap_3_layout.html.twig']
resources: ['bootstrap_3_horizontal_layout.html.twig']
2-使用来显示您的表单
- 形式
- 表格开始
- 表尾
- 表格类型
- 表单小部件
- 表格错误
- 表格标签
- form_row
- 休息室
{% form_theme form 'bootstrap_3_horizontal_layout.html.twig' %}
{{ form_start(form) }}
...
{{ form_row(form.price, {'label': "Price"}) }}
...
{{ form_end(form) }}
在你的表格里
$builder->add('price', 'money');
我希望这可以帮助别人,因为这是我希望我找到的!
再次感谢约翰·诺埃尔感谢约翰·诺埃尔,我找到了答案。 总结一下,如果有人想做同样的事情 在Symfony2表单中使用bootstrap3预先定义的布局 1-声明要使用的表单主题 在你的小枝模板中
{% form_theme form 'bootstrap_3_horizontal_layout.html.twig' %}
或全局搜索/app/config/config.yml中的所有表单
# Twig Configuration
twig:
form:
#resources: ['bootstrap_3_layout.html.twig']
resources: ['bootstrap_3_horizontal_layout.html.twig']
2-使用来显示您的表单
- 形式
- 表格开始
- 表尾
- 表格类型
- 表单小部件
- 表格错误
- 表格标签
- form_row
- 休息室
{% form_theme form 'bootstrap_3_horizontal_layout.html.twig' %}
{{ form_start(form) }}
...
{{ form_row(form.price, {'label': "Price"}) }}
...
{{ form_end(form) }}
在你的表格里
$builder->add('price', 'money');
我希望这可以帮助别人,因为这是我希望我找到的!
再次感谢约翰·诺埃尔