在我最近的问答之后(效果很好),我创建了自己的模板:
{% extends "bootstrap_3_layout.html.twig" %}
{% block choice_widget_collapsed -%}
{% set attr = attr|merge({class: (attr.class|default('') ~ ' combobox input-large form-control')|trim}) %}
{{- parent() -}}
{%- endblock %}
首先它在...的目录下
..\vendor\symfony\symfony\src\Symfony\Bridge\Twig\Resources\views\Form\form_combo_layout.html.twig
但是,由于还有其他模板,例如我从引导程序扩展的模板,我不希望我的“组合框”组件覆盖原始引导程序模板,因为它们使用完全相同的文件夹路径,即
..\vendor\symfony\symfony\src\Symfony\Bridge\Twig\Resources\views\Form\"template name"
当我调用时,config.yml 没有问题...
twig:
debug: "%kernel.debug%"
strict_variables: "%kernel.debug%"
form_themes: ['Form/form_errors.html.twig']
form:
resources: ['form_combo_layout.html.twig']
但是,由于类似组件的覆盖,我将其放入“资源”下的不同文件中,即
..\vendor\symfony\symfony\src\Symfony\Bridge\Twig\Resources\templates\form_combo_layout.html.twig
并取决于我想将 config.yml 中的路径修改为...
twig:
debug: "%kernel.debug%"
strict_variables: "%kernel.debug%"
form_themes: ['Form/form_errors.html.twig']
form:
resources: ['../Resources/templates/form_combo_layout.html.twig']
最后......我在相关页面的本地主机上遇到了一个错误......
Unable to find template "../Resources/templates/form_combo_layout.html.twig" in base.html.twig at line 23.
500 Internal Server Error - Twig_Error_Loader
1 linked Exception: RuntimeException »
尽管,文件路径和文件存在。
一些牛眼帮助将不胜感激!!!!
PS:在cookbook中写到我们不能使用参数来动态构建导入路径..
imports:
- { resource: "%kernel.root_dir%/parameters.yml" }
这是错误的