查找 Symfony 小部件内容文件位置

Find Symfony Widget Content File Location

我第一次使用 Symfony 小部件。

{% render "EducateToolsBundle:Shared:selectMenu" with {'entity': 'Stores'} %}

其含义是SharedController -->selectMenuAction

{% form_theme form 'EducateToolsBundle:shared:_form_theme.html.twig' %}

这是什么意思

我从哪里获取此表单的值。?

您必须查看 Shared 控制器中的 selectMenuAction() 方法。正是该功能设置了使用什么模板。如果使用默认的 Symfony 编码标准,它应该类似于 selectMenu.html.twigResources/views 包的 Shared 子文件夹中。

您应该先查看文档: https://symfony.com/doc/current/form/form_customization.html

因为我们不会在这里教你 symfony,所以在文档中解释得很好,这对我们来说是一项太大的任务。

在您的例子中,theForm.id 是我们要显示的 formType 的字段。 如果我们想显示用户姓氏形式的 <input>,我们将使用

form_widget(userForm.lastname)

form_widget 告诉 symfony 只显示给定 id 的部件(the )。 如果你想有一个标签+输入+你可以使用的字段的错误

form_row(userForm.lastname)

几乎等于

<div>
    {{ form_label(form.lastname) }}
    {{ form_errors(form.lastname) }}
    {{ form_widget(form.lastname) }}
</div>

(这取决于表单主题,但您应该阅读文档以了解详细信息;))