Zend框架模块设置

时间:2016-06-08 20:41:49

标签: php zend-framework module

我试图在Zend Framework中设置模块。现在我只想要它转到summary.phtml页面,它会显示Hello World 我在module目录下设置了目录结构,如下所示:

Directory Structure

我的文件如下:

  

module.config.php

<?php
return array(
        'controllers' => array(
                'invokables' => array(
                        'BlindQC\Controller\BlindQC' => 'BlindQC\Controller\BlindQCController',
                ),
        ),
        // The following section is new and should be added to your file
        'router' => array(
                'routes' => array(
                        'blinqc' => array(
                                'type' => 'Literal',
                                'options' => array(
                                        'route' => '/summary',
                                        'defaults' => array(
                                                '__NAMESPACE__' => 'BlindQC\Controller',
                                                'controller' => 'BlindQC',
                                                'action' => 'summary',
                                        ),
                                ),
                        ),
                ),
        ),
        'view_manager' => array(
                'template_path_stack' => array(
                        'blindqc' => __DIR__ . '/../view',
                ),
        ),
);
  

BlindQCController.php

<?php
namespace BlindQC\Controller;
use Zend\Mvc\Controller\AbstractActionController;
use Zend\View\Model\ViewModel;

class BlindQCController extends AbstractActionController{
    public function summaryAction(){

    }
}; 
  

summary.phtml

<h1>Hello World</h1>
  

autoload_classmap.php

<?php
return array();
  

Module.php

<?php
namespace BlindQC;

class Module {
    public function getAutoloaderConfig() {
        return array(
                'Zend\Loader\ClassMapAutoloader' => array(__DIR__ . '/autoload_classmap.php',),
                'Zend\Loader\StandardAutoloader' => array(
                        'namespaces' => array(__NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__,),
                ),
        );
    }

    public function getConfig() {
        return include __DIR__ . '/config/module.config.php';
    }
}

我还修改了我的项目application.config.php以包含我的模块:

// This should be an array of module namespaces used in the application.
'modules' => array(
        'Application',
        'UIExperiment',
        'Developer',
        'User',
        'Project',
        'Report',
        'ProjectFamily', 
        'FMEProcessManager', 
        'BlindQC'
),

当我尝试进入汇总路线(/blindqc/summary)时,我得到了404.知道我做错了什么吗?

1 个答案:

答案 0 :(得分:0)

我所要做的就是将module.config.php中的路线更改为/blindqc/summary,并在我的目录结构中将view/blindqc/blindqc重命名为view/blind-qc/blind-qc