0

カスタム ルートを phalcon に登録できません。何が問題なのかわかりません。

   $di['router'] = function () {
        return require __DIR__ . '/config/routes.php';
    };

私が持っているルートファイルに

$router = new Phalcon\Mvc\Router();

//$router->setUriSource(Router::URI_SOURCE_SERVER_REQUEST_URI);

  $router->add('/confirm/{code}/{email}', array(
    'controller' => 'user_control',
    'action' => 'confirmEmail'
 ));

 /*$router->add('/reset-password/{code}/{email}', array(
    'controller' => 'user_control',
     'action' => 'resetPassword'
    ));*/

 return $router;

/confirm/32sadfasdfwef/www@gmail.com にアクセスすると

私は得ています

  Ilm\Frontend\Controllers\ConfirmController handler class cannot be loaded

そのマルチ モジュール アプリケーション。

And if i do die() in $di['router'] it does not do anything.
4

1 に答える 1

0

double は必要ないと思いますreturn。インクルードに 1 つ、サービス クロージャーに 1 つあります。routes.php から削除して、次のようにします。

$di['router'] = function () {
    require __DIR__ . '/config/routes.php';
    return $router;
};

または、そのままにして次のようにします。

$di['router'] = function () {
    require __DIR__ . '/config/routes.php';
};

最初のオプションはより自然に感じます。マルチモジュール アプリの場合は、ルートでモジュールを指定する必要もあります。こちらをご覧ください。

$router->add('/:controller/:action/:params', array(
    'module' => "frontend",
    'controller' => 1,
    'action' => 2,
    'params' => 3
))->setName('front-full');
于 2014-07-02T05:18:46.507 に答える