1



我在我的 Web 应用程序中使用 Zend Framework。我有下一个网址:domain/user/user/username. 首先userdefault模块中的控制器。二userGET变数。username是这个变量的值。都好。但是为了良好的可用性,我想要下一个 URL domain/user/username:. 我知道根据 Zend GET 规则,它应该是我的第一个变体。但也许我可以通过 mod 重写或 Zend_Route 来做到这一点?请帮帮我。

先感谢您。

4

2 回答 2

2

创建/application/configs/routes.xml

<?xml version="1.0" encoding="UTF-8"?>
<routes>
    <user>
      <route>user/:username/*</route>
      <defaults>
          <module>default</module>
          <controller>user</controller>
          <action>view</action>
          <username>0</username>
      </defaults>
    </user>
</routes>

然后在Bootstrap.php

public function _initRouter()
{
    $front = Zend_Controller_Front::getInstance();
    $router = $front->getRouter();
    $config = new Zend_Config_Xml(dirname(__FILE__) . '/configs/routes.xml');
    $router->addConfig($config);

    return $router;
}

您也可以通过许多其他方式执行相同的操作,例如在application.ini.

于 2010-11-07T09:10:26.320 回答
1

In your application.ini, add:

resources.router.routes.article.type = "Zend_Controller_Router_Route"
resources.router.routes.article.route = "user/:username/*"
resources.router.routes.article.defaults.module = "default"
resources.router.routes.article.defaults.controller = "user"
resources.router.routes.article.defaults.action = "view"
resources.router.routes.article.reqs.username = "guest"

and I suggest you to have a look at:

http://framework.zend.com/manual/en/zend.controller.router.html

于 2010-11-07T11:19:02.643 回答