在我最近的问答(运作良好)之后,我创建了自己的模板:
{% 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
但是,由于还有其他模板,例如我从bootstrap扩展的模板,我不希望我的'combobox'组件覆盖原始引导程序模板,因为它们使用完全相同的文件夹路径
..\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']
最后......我在相关页面中遇到了localhost错误......
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" }
这是错误的
答案 0 :(得分:0)
我找到了容易像地狱的解决方案.... 因为资源路径请求带有"目录路径的数组表单"参数应该是
resources: ['templates/form_combo_layout.html.twig']