class ArticleController(BaseController): def all(self, page, pagesize):
/article/all/{page}/{pagesize} ,默认值为 page 和 pagesize .
/article/all/{page}/{pagesize}
page
pagesize
我试着在action方法中设置默认值,但是很明显两者都是 页码 和 如果我只设置一个 页码 价值观。
页码
我也试过这样的方法,但也没用:
map.connect('/article/all/{page}/{pagesize}', controller='article', action='all') map.connect('/', controller='article', action='all', page=0, pagesize=5) map.connect('/article/all/', controller='article', action='all', page=0, pagesize=5)
实际上,在这种情况下,当我访问 / /article/all/ . /article/all (即使我去掉了尾随 在相应的路线上)。
/
/article/all/
/article/all
不管怎样,我的问题是,我怎么能 all() 使用的默认值调用 页码 和 页大小 /article/all/42 ?
all()
页大小
/article/all/42
(我知道我可以使用查询字符串。 map.redirect()
map.redirect()
你的路线应该是这样的:
map.connect('/article/all', controller='Article', action='all', page=0, pagesize=5) map.connect('/article/all/{page}', controller='Article', action='all', pagesize=5) map.connect('/article/all/{page}/{pagesize}', controller='Article', action='all')
class ArticleController(BaseController): def all(self, page, pagesize): return 'Page: %s. Pagesize: %s.' % (page, pagesize)