Zend framework2 zend 2:无法呈现模板。。。解析程序无法解析为文件

Zend framework2 zend 2:无法呈现模板。。。解析程序无法解析为文件,zend-framework2,Zend Framework2,我正穿过马路,撞到了一堵墙。在本教程中,我的动作控制器通过indexAction()加载视图: 但在加载页面时,我看到以下错误: Zend\View\Renderer\PhpRenderer::render: Unable to render template "album/album/index"; resolver could not resolve to a file 这时我意识到我不知道到底发生了什么。我甚至不知道从哪里开始解决这个错误。在我扫描所有的文件之前,我真的很想了解这个错误是

我正穿过马路,撞到了一堵墙。在本教程中,我的动作控制器通过indexAction()加载视图:

但在加载页面时,我看到以下错误:

Zend\View\Renderer\PhpRenderer::render: Unable to render template "album/album/index"; resolver could not resolve to a file
这时我意识到我不知道到底发生了什么。我甚至不知道从哪里开始解决这个错误。在我扫描所有的文件之前,我真的很想了解这个错误是如何发生的

这是我的modul.config.php:

<?php
return array(
    'controllers' => array(
        'invokables' => array(
            'Album\Controller\Album' => 
            'Album\Controller\AlbumController',
        ),
    ),

    'router' => array(
        'routes' => array(
            'album' => array(
                'type' => 'segment',
                'options' => array(
                    'route' => '/album[/:action][/:id]',
                    'constraints' => array(
                        'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
                        'id' => '[0-9]+',
                    ),
                    'defaults' => array(
                        'controller' => 'Album\Controller\Album',
                        'action' => 'index',
                    ),
                ),
            ),
        ),
    ),

    'view_manager' => array(
        'template_path_stack' => array(
            'ablum' => __DIR__ . '/../view',
        ),
    ),
);
“无法呈现模板”相册/相册/索引错误“意味着您必须将
index.phtml
文件添加到“album”模块的
视图
目录下的
/album/album
目录下。
index.phtml
视图模板文件用于呈现
Album
模块的
Album控制器的
index
操作的视图。由于此文件似乎丢失,视图模板解析程序无法找到它

在Zend Framework 2中,您将视图实现为模板文件,这是一个文件 具有
.phtml
扩展(“phtml”代表PHP+HTML)。视图模板具有这样的特性 名称,因为它们通常包含混合使用的PHP代码片段的HTML代码 用于呈现网页。视图通常位于模块的视图子目录中


对于初学者,我建议读这本书。使用本电子书,您可以节省学习ZF2的时间和精力。

此外,路径区分大小写,即所有路径都应为小写相册/索引/索引文件夹的名称和索引。phtml否则phpRenderer将无法跟踪视图文件并呈现它。

您还可以检查module.config.php中是否有以下内容

'view_manager' => [
        'template_path_stack' => [
            __DIR__ . '/../view',
        ],
    ],

你有phtml文件吗:
module/Album/view/Album/Album/index.phtml
?啊哈!我不小心将视图目录嵌套在src文件夹-duh中。我刚刚测试了做‘专辑’=>DIR’//src/view',它的工作原理就是这样。谢谢如果您希望我接受,请以答案的形式提供该评论。我如何知道是哪个模块导致了此错误?我通过composer添加了
ZFCUser
模块,站点将不会加载。。我猜我需要以某种方式覆盖默认的
.phtml
谢谢,这解决了一个非常烦人的问题。
'view_manager' => [
        'template_path_stack' => [
            __DIR__ . '/../view',
        ],
    ],