我一直在我的 application.ini 文件中设置我的路线,该文件适用于我设置的所有路线。问题是当该控制器中有多个操作并且我尝试在其他操作中使用路由时。
例如,我在 application.ini 中为分页和列排序创建了以下内容
resources.router.routes.search.route = "search/:page/:col/:sort/:limit/"
resources.router.routes.search.defaults.controller = search
resources.router.routes.search.defaults.page = 1
resources.router.routes.search.defaults.col = time
resources.router.routes.search.defaults.sort = default
resources.router.routes.search.defaults.limit = 50
resources.router.routes.search.reqs.page = \d+
resources.router.routes.search.reqs.col = \w+
resources.router.routes.search.reqs.sort = \w+
resources.router.routes.search.reqs.limit = \d+
当我在该页面的默认操作上时,上述方法有效
www.mywebsite.com/search/2/
会调出结果的第二页。但如果我在另一个动作上尝试同样的动作,
www.mywebsite.com/search/action/2
它只是显示一个空白页。我尝试在 ini 中创建自己的设置,但没有奏效。我以前遇到过这个问题,但通常只是放弃并将事物分成不同的控制器,但我宁愿采取不同的行动。
任何帮助将非常感激。
马特