如何在 Zend Framework Router 中使参数可选 [英] How to make parameter optional in Zend Framework Router

查看:47
本文介绍了如何在 Zend Framework Router 中使参数可选的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想知道 .ini 配置文件设置以创建一个路由,其中​​页码参数是可选的,以便

I would like to know the .ini config file setup to make a route wherein the page number parameter is optional so that

http://news.mysite.com/national
http://news.mysite.com/national/1

指向同一页面.

我的代码如下

resources.router.routes.news_list.type = "Zend_Controller_Router_Route_Regex"
resources.router.routes.news_list.route = "([a-zA-Z0-9\-]+)/([0-9\-]+)"
resources.router.routes.news_list.defaults.module = "news"
resources.router.routes.news_list.defaults.controller = "index"
resources.router.routes.news_list.defaults.action = "category"
resources.router.routes.news_list.defaults.page = 1
resources.router.routes.news_list.map.1 = "categ"
resources.router.routes.news_list.map.2 = "page"
resources.router.routes.news_list.reverse = "%s/%s"

有人可以帮我解决修改此代码以使其适用于两个网址的解决方案

can some1 help me out with a solution to modify this code to make it work for both urls

推荐答案

你可以在没有正则表达式的情况下使用:

You can do this without the regex route using:

routes.news_list.route = ":action/:page"
routes.news_list.defaults.module = "news"
routes.news_list.defaults.controller = "index"
routes.news_list.defaults.action = "category"
routes.news_list.defaults.page = 1

我假设您希望每个请求都转到新闻"模块和索引"控制器.url 中只有操作和页面是可变的.

I assume that you want every request to go to the "news" module and the "index" controller. Only the action and the page are variable in the url.

这篇关于如何在 Zend Framework Router 中使参数可选的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆