无法从base.html.twig继承

时间:2013-12-24 19:26:35

标签: symfony twig

以下是我的目录结构。 Views文件夹有一个名为Default的子文件夹,其中包含home.html.twig模板,此模板由DefaultController中的方法呈现。 base.html.twig位于views文件夹中。

|--views
|----Default
|------home.html.twig
|----base.html.twig  

base.html.twig的代码

<!DOCTYPE html>
<html>
    <body>
        <h1>testing</h1>    
    </body>
</html>

home.html.twig的代码

{% extends '::base.html.twig' %}

由于home.html.twig延伸base.html.twig所以home.html.twig必须显示<h1>testing</h1>,但不会显示。{/ p>

2 个答案:

答案 0 :(得分:6)

home.html.twig的代码应为:

{% extends 'ProjectAppBundle::base.html.twig' %}

http://symfony.com/doc/current/book/templating.html

答案 1 :(得分:2)

如果您的观点位于捆绑包内,则不得使用{% extends '::base.html.twig' %},因为base.html.twig通常位于Symfony / app / resources / views / base.html.twig

在捆绑包中,您应该尝试{% extends '@ProjectApp/base.html.twig' %}

之类的内容

'Project'是命名空间,App是包的名称,因此base.html.twig将位于Symfony / src / Project / AppBundle / Resources / views /

希望有所帮助!