Php ZF2";无法呈现模板";Zend在错误的目录中查找

Php ZF2";无法呈现模板";Zend在错误的目录中查找,php,zend-framework2,Php,Zend Framework2,我有一个奇怪的情况 在创建ZF2 SkeletonApplication之后,我创建了一个额外的模块,名为AuthController身份验证,并在视图目录“Authentication/auth”中创建了一个login.phtml 当我运行应用程序时,我得到一个错误 Zend\View\Renderer\PhpRenderer::render: Unable to render template "authentication/auth/login"; resolver could not r

我有一个奇怪的情况

在创建ZF2 SkeletonApplication之后,我创建了一个额外的模块,名为AuthController身份验证,并在视图目录“Authentication/auth”中创建了一个login.phtml

当我运行应用程序时,我得到一个错误

Zend\View\Renderer\PhpRenderer::render: Unable to render template "authentication/auth/login"; resolver could not resolve to a file
奇怪的是,当我将完整的文件夹“authentication/auth/login.phtml”放在标准应用程序模块视图文件夹中时,它找到了它

所以Zend找错了目录

这是我的module.config.php(身份验证模块)

这是AuthController

namespace Authentication\Controller;

use Zend\Mvc\Controller\AbstractActionController;
use Zend\View\Model\ViewModel;

class AuthController extends AbstractActionController
{
    public function loginAction()
    {
        return new ViewModel();
    }
}
我希望有人能给我指出正确的方向。

更改您的配置:

'template_path_stack' => array(
    'authentication' => __DIR__ . '/../view',
),
我猜你的水平太低了

如果您在此处进行配置:

Authentication/config/module.config.php

然后您只想返回一个级别,然后进入视图目录。您的代码会将您带回到更高级别的模块目录。

zf2无法解析完整路径。viewManager正在使用模板pathStack查找相对视图。在您的示例中,viewManager正在查找以下文件: 目录“//查看/authentication/auth/login.phtml

另一种方式是,您可以向viewManager添加以下模板映射:

'view_manager' => array(
    'template_map' => array(
        'authentication/auth/login' => __DIR__ . '/../view/where/you/want.phtml',
     )
 );

对不起,这是我刚才试图强迫出错的内容,我刚刚编辑了它。
'view_manager' => array(
    'template_map' => array(
        'authentication/auth/login' => __DIR__ . '/../view/where/you/want.phtml',
     )
 );