0

単一モジュールのモジュラー構造を作成すると、URL がコントローラーの名前に表示されなくなります。

すべてがデフォルトで動作します

site.con/foo/index/action/

のように書けばいいのに

site.com/foo/action/

IndexController であることは、そのモジュールの唯一のコントローラーです。

いくつかのソリューションをテストしましたが、うまくいきません。ZF の最初のアプリなので、取るべき手順がよくわかりません。

4

1 に答える 1

2

Zend Routesが必要です。

でルートを定義します

ブートストラップ.php

bootstrap.php を開き、次のように記述します。

function _initRoutes() {
        $front_controller = Zend_Controller_Front::getInstance();
        $router = $front_controller->getRouter();
        $router->addRoute('foo-action', new Zend_Controller_Router_Route(
            '<foo module name>/<action name>', array('module' => 'foo', 'controller' => 'index', 'action' => '<action-name>')
        ));
}

PS:働いた/働かなかった? コメントで言及し、うまくいかなかった場合は、モジュール、コントローラー、およびアクションの適切な名前を付けてください。

編集:

application.ini でデフォルトのコントローラー/モジュールを設定する方法

routes.index.type = "Zend_Controller_Router_Route"
routes.index.route = "/"
routes.index.defaults.module = "<module name>"
routes.index.defaults.controller = "index"
routes.index.defaults.action = "index"

解決しますか?

于 2012-08-16T10:57:28.260 に答える