0

我是 Zend 的新手。我已经设置了本地开发,zend.local 我正在创建一个新模块说Csv,当我转到像 zend.local/csv 这样的 URL 时,它给了我以下错误 在此处输入图像描述

module.config.php的如下:

<?php
return array(
    'controllers' => array(
        'invokables' => array(
            'Csv\Controller\Csv' => 'Csv\Controller\IndexController',
        ),
    ),
     'router' => array(
         'routes' => array(
             'csv' => array(
                 'type'    => 'segment',
                 'options' => array(
                     'route'    => '/csv[/][:action][/:id]',
                     'constraints' => array(
                         'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
                         'id'     => '[0-9]+',
                     ),
                     'defaults' => array(
                         'controller' => 'Csv\Controller\IndexController',
                         'action'     => 'index',
                     ),
                 ),
             ),
         ),
     ),

    'view_manager' => array(
        'template_path_stack' => array(
            'csv' => __DIR__ . '/../view',
        ),
    ),
);
4

2 回答 2

1

您提供了错误的控制器名称:

             'defaults' => array(
                 'controller' => 'Csv\Controller\IndexController',
                 'action'     => 'index',
             ),

它应该是

             'defaults' => array(
                 'controller' => 'Csv\Controller\Csv',
                 'action'     => 'index',
             ),

根据你的配置

'controllers' => array(
    'invokables' => array(
        'Csv\Controller\Csv' => 'Csv\Controller\IndexController',
    ),
),
于 2014-08-24T10:06:53.407 回答
-1

您需要该may_terminate选项以确保路由器可以将csv其视为可以终止的路由。

'csv' => array(
    'type'    => 'segment',
    'options' => array(
        'route'    => '/csv[/][:action][/:id]',
        'constraints' => array(
            'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
            'id'     => '[0-9]+',
        ),
        'defaults' => array(
            'controller' => 'Csv\Controller\IndexController',
            'action'     => 'index',
        ),
    ),
    'may_terminate' => true // added
),
于 2014-08-24T02:04:29.533 回答