1
我有一個動作,看起來像這樣:如何爲Pylons操作指定默認參數值?
class ArticleController(BaseController):
def all(self, page, pagesize):
我希望能夠訪問/article/all/{page}/{pagesize}
,採用默認值的page
和pagesize
。
我嘗試設置操作方法的默認值,但顯然page
和pagesize
設置爲默認值,如果我只設置page
值。
我也嘗試過這樣的事情,但它不工作之一:
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
(即使我相應地刪除路徑中的尾部/
)。
看看Routes的文檔,它看起來像默認值在這種情況下根本不應該工作,所以也許這是一些有點或未定義的行爲。
不管怎樣,我的問題是,如何才能得到all()
與默認值呼籲page
和pagesize
訪問/article/all
和/article/all/42
時?
(我知道我可以使用查詢字符串,而不是map.redirect()
還種的伎倆,但我真的不希望重定向。)
顯然,具有相同的資源多個URL被認爲是一種不好的做法(http://pylonsbook.com/en/1.1/urls-routing-and-dispatch。 HTML#路由最小化)。所以我想我會堅持'重定向()'。 – 2010-10-03 10:01:03
奇怪它不適合你。它使用全新的Pylons 1.0 projet在這裏完美工作。另外我想你是正確的重定向。 – 2010-10-03 13:33:55