如何禁用 symfony 2.7 中的所有标签形式

How to disable all labels forms in symfony 2.7

我需要在我的项目的所有形式中隐藏所有标签标记。这可能吗? 我看到很多答案都是使用表单生成器从表单中隐藏一个标签。但是我需要隐藏所有形式的所有标签。

不 - 你真的只有 3 个选项:

一个接一个

从 v2.2 开始,您可以选择在表单构建器中逐个字段地抑制标签输出:

$builder->add( 'Name', null, array( 'label' => false ) );

用大锤砸树枝

您可以将核心 {% block form_label %} 覆盖为 return 什么都没有

隐藏证据

或者,您可以 - 通过 css - 使用 display: none;

隐藏每一个敢于展示其丑陋面孔的标签

给您留下最大移动空间的解决方案是第一个 - 但取悦自己。

我假设您使用的是 Twig。

定义一个覆盖 form_label 块的模板:

{# app/Resources/views/form/labels.html.twig #}

{% block form_label %}
{% endblock %}

然后告诉 Twig 在全局范围内使用这个覆盖的模板:

# app/config/config.yml

twig:
    form_themes:
        - ":form:labels.html.twig"