Symfony2 在捆绑中扩展树枝 - 没有效果
Symfony2 extends twig in bundle - no effect
我在 Symfony2 中做我的第一个项目。我有模板问题。我的主树枝文件是“index.html.twig
”。它位于 src/Gogs/CMSBundle/Resources/views/Default/index.html.twig
我尝试从 content.html.twig
扩展主树枝文件 -> 它也在同一目录中。
在 index.html.twig
我有 {% block body %}{% endblock %}
。
我的 content.html.twig
看起来像:
{% extends 'GogsCMSBundle:Default:index.html.twig' %}
{% block body %}
Some content
{% endblock %}
我在很多论坛上寻找解决方案,但没有任何效果。 Symfony 没有给我任何错误 - 没有效果。
当我尝试在 index.html.twig
中使用 include 时,它运行良好。下面的代码。
{% include "GogsCMSBundle:Default:content.html.twig" %}
我也尝试使用另一个命令:
{% extends 'GogsCMSBundle:Default:index.html.twig' %}
{% extends 'GogsCMSBundle::index.html.twig' %}
{% extends 'GogsCMSBundle:index.html.twig' %}
{% extends '::index.html.twig' %}
{% extends 'index.html.twig' %}
所有这些都没有任何效果 - 也没有错误。
我的主控制器:
return $this->render('GogsCMSBundle:Default:index.html.twig', array('name' => $page, 'menu' => $menu));
我清理了很多次缓存。
您需要在 app\Resources\views 中移动 indexd.html.twig = 这是 symfony 的基本布局。接下来在 src/YourBundle/Resources/views layout.html.twig 中创建 - 扩展 index.html.twig:
{% extends '::index.html.twig' %}
最后,添加 content.html.twig :
{% extends 'GogsCMSBundle::layout.html.twig' %}
更多信息there
@Artamiel 找到了答案...
错误在控制器中。控制器必须指示 content.html.twig
.
所以解决方案:
index.html.twig
{# src/Gogs/CMSBundle/Resources/views/Default/index.html.twig #}
{% block body %}{% endblock %}.
content.html.twig
{# src/Gogs/CMSBundle/Resources/views/Default/content.html.twig #}
{% extends 'GogsCMSBundle:Default:index.html.twig' %}
{% block body %}
Some content
{% endblock %}
Contoller.php
return $this->render('GogsCMSBundle:Default:content.html.twig');
我在 Symfony2 中做我的第一个项目。我有模板问题。我的主树枝文件是“index.html.twig
”。它位于 src/Gogs/CMSBundle/Resources/views/Default/index.html.twig
我尝试从 content.html.twig
扩展主树枝文件 -> 它也在同一目录中。
在 index.html.twig
我有 {% block body %}{% endblock %}
。
我的 content.html.twig
看起来像:
{% extends 'GogsCMSBundle:Default:index.html.twig' %}
{% block body %}
Some content
{% endblock %}
我在很多论坛上寻找解决方案,但没有任何效果。 Symfony 没有给我任何错误 - 没有效果。
当我尝试在 index.html.twig
中使用 include 时,它运行良好。下面的代码。
{% include "GogsCMSBundle:Default:content.html.twig" %}
我也尝试使用另一个命令:
{% extends 'GogsCMSBundle:Default:index.html.twig' %}
{% extends 'GogsCMSBundle::index.html.twig' %}
{% extends 'GogsCMSBundle:index.html.twig' %}
{% extends '::index.html.twig' %}
{% extends 'index.html.twig' %}
所有这些都没有任何效果 - 也没有错误。
我的主控制器:
return $this->render('GogsCMSBundle:Default:index.html.twig', array('name' => $page, 'menu' => $menu));
我清理了很多次缓存。
您需要在 app\Resources\views 中移动 indexd.html.twig = 这是 symfony 的基本布局。接下来在 src/YourBundle/Resources/views layout.html.twig 中创建 - 扩展 index.html.twig:
{% extends '::index.html.twig' %}
最后,添加 content.html.twig :
{% extends 'GogsCMSBundle::layout.html.twig' %}
更多信息there
@Artamiel 找到了答案...
错误在控制器中。控制器必须指示 content.html.twig
.
所以解决方案:
index.html.twig
{# src/Gogs/CMSBundle/Resources/views/Default/index.html.twig #}
{% block body %}{% endblock %}.
content.html.twig
{# src/Gogs/CMSBundle/Resources/views/Default/content.html.twig #}
{% extends 'GogsCMSBundle:Default:index.html.twig' %}
{% block body %}
Some content
{% endblock %}
Contoller.php
return $this->render('GogsCMSBundle:Default:content.html.twig');