Php Symfony2无法在包内呈现模板
我的结构如下:Php Symfony2无法在包内呈现模板,php,symfony,twig,Php,Symfony,Twig,我的结构如下: /src/Product/AdminBundle/Resources/views/main.twig 我正在尝试从控制器渲染此模板: $this->render(...); 或者来自routing.yml index_page: path: / defaults: _controller: FrameworkBundle:Template:template template: ... 如何从捆绑包中的控制器内部渲染此
/src/Product/AdminBundle/Resources/views/main.twig
我正在尝试从控制器渲染此模板:
$this->render(...);
或者来自routing.yml
index_page:
path: /
defaults:
_controller: FrameworkBundle:Template:template
template: ...
如何从捆绑包中的控制器内部渲染此内容?以下是我在没有运气的情况下尝试过的:
- 产品:AdminBundle:main.twig
- ProductAdminBundle:main.twig
- @ProductAdminBundle:main.twig
- @ProductAdminBundle/main.twig
- ProductAdminBundle/main.twig
- ProductAdminBundle/Resources/views/main.twig
- Product/AdminBundle/Resources/views/main.twig
- AdminBundle:main.twig
- AdminBundle/main.twig
return $this->render('ProductAdminBundle:main.html.twig', []);
其中,main.html.twig
是您的视图名(而不是main.twig)。尝试如下:
return $this->render('ProductAdminBundle:main.html.twig', []);
其中,
main.html.twig
是您的视图名(而不是main.twig)。尝试了所有可能的组合后,这是一个适合我的组合:
@AdminBundle/Resources/views/main.twig
在尝试了所有可能的组合后,这是一个对我有效的组合:
@AdminBundle/Resources/views/main.twig
通常的路径语法是:
BundleName:DirectoryInView:file.html.twig
在您的情况下,这将是:
ProductAdminBundle::main.html.twig
我们使用
::
,因为您的视图位于根目录中。通常的路径语法是:
BundleName:DirectoryInView:file.html.twig
在您的情况下,这将是:
ProductAdminBundle::main.html.twig
我们使用
::
,因为您的视图位于根目录中。AdminBundle::main.twig不起作用
将main.twig重命名为main.html.twig
之后,AdminBundle::main.html.twig将工作 AdminBundle::main.twig不工作 将main.twig重命名为main.html.twig
之后,AdminBundle::main.html.twig将工作 更改了名称,甚至尝试将其添加到目录中以确保。没有更改名称,甚至尝试将其添加到目录中以确保。没用