我正在尝试在这里创建网址,例如:
/admin/login
/moderator/login
这两个请求都将由相同的控制器提供服务并执行登录操作,即/account/login/<type>
目前,我只能制作以下网址:
/login/admin
/login/moderator
我当前的配置文件如下所示:
resources.router.routes.login.route = "login/:type"
resources.router.routes.login.defaults.controller = "account"
resources.router.routes.login.defaults.action = "login"
我不知道如何放置type
URL 开头的变量,我尝试过,但它给出了服务器错误。edit
我完成了这项工作,但不明白为什么这之前不起作用:
resources.router.routes.login.route = ":type/login"
resources.router.routes.login.defaults.controller = "account"
resources.router.routes.login.defaults.action = "login"
edit
是否可以让这种安排更加灵活,以便:/login
=> /admin/login
我不是通过 .htaccess 寻找解决方案
将以下内容添加到您的 Bootstrap.php
function _initRoutes() {
$front_controller = Zend_Controller_Front::getInstance();
$router = $front_controller->getRouter();
$router->addRoute('login', new Zend_Controller_Router_Route(
'/:type/login', array('controller' => 'account', 'action' => 'login')
));
}
从你的loginAction()
使用:
$this->getRequest()->getParam('type');
Simple?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)