一段时间以来,我一直在编写一个项目,并且使用了默认路由,即 :module\:controller:\:action。一段时间后,我在我的配置中添加了一些路由器,例如:
resources.router.routes.page.route = "page/:slug"
resources.router.routes.page.defaults.module = "default"
resources.router.routes.page.defaults.controller = "pages"
resources.router.routes.page.defaults.action = "view"
resources.router.routes.page.defaults.slug = ""
但是,在那之后,当我单击带有新路由之一的视图 URL 助手生成的某个链接时,所有其他链接都会忽略一些给定的参数。例如,我有路线:
resources.router.routes.project.route = "project/:slug"
resources.router.routes.project.defaults.module = "projects"
resources.router.routes.project.defaults.controller = "projects"
resources.router.routes.project.defaults.action = "view"
resources.router.routes.project.defaults.slug = ""
如果我去一个链接 /project/test 然后链接是这样的:
$this->url(
array('module' => 'admin', 'action' => 'list-users', 'controller' => 'users')
, null,true
);
将指向“/项目”
是否有可能在自定义路由之上维护默认路由?我可以添加一些与默认路由器相同的默认路由器吗?这可能很简单,但我可能错过了重点。感谢所有的帮助。
我添加了这样的东西,但没有效果:
resources.router.routes.default.route = ":module/:controller/:action"
resources.router.routes.default.defaults.module = "default"
resources.router.routes.default.defaults.controller = "pages"
resources.router.routes.default.defaults.action = "view"
resources.router.routes.default.defaults.slug = ""