我使用以下模板扩展特定小部件
{% use 'SonataAdminBundle:Form:form_admin_fields.html.twig' %}
{% form_theme form _self %}
{% block textarea_widget %}
{% spaceless %}
<div class="textarea_widget">
<textarea {{ block('widget_attributes') }}>{{ value|raw }}
</textarea>
</div>
{% endspaceless %}
{% endblock textarea_widget %}
主要问题是它达到了最大功能嵌套。扩展模板时必须有一些无限递归。当我从扩展模板复制代码时,一切正常。知道如何使这个工作吗?
答案 0 :(得分:3)
这可能是由xDebug引起的,您必须使用xdebug.max_nesting_level
参数进行配置。默认值为100但我通常将其升级到1000以保持安静。
在Debian上,它位于/etc/php5/conf.d/xdebug.ini
。
关于此参数的官方文档:
xdebug.max_nesting_level类型:整数,默认值:100
控制无限递归保护的保护机制。 此设置的值是嵌套函数的最大级别 在脚本中止之前允许的。
答案 1 :(得分:0)
修复此错误我需要在app / Resources / SonataAdmin / views / Form中创建form_admin_fields.html.twig文件,其中包含以下内容:
{% block textarea_widget %}
{% spaceless %}
<div class="textarea_widget">
<textarea {{ block('widget_attributes') }}>{{ value|raw }} </textarea>
</div>
{% endspaceless %}
{% endblock %}
因此没有必要使用或扩展模板只需重新定义一些块。