2010-04-16 23 views
4

对我有以下途径定义:will_paginate路线只能页> 1

map.resources :categories, :has_many => :downloads 
map.resources :downloads, :member => {:go => :get}, :collection => {:tag => :get} 
map.connect '/downlods/page/:page', :controller => 'downloads', :action => 'index' 
map.connect '/categories/:category_id/downloads/page/:page', :controller => 'downloads', :action => 'index' 

出于某种原因,第一页的will_paginate助手被称为上页= 2被渲染的原因链接?而后续页面与/ downloads/page/2链接。你知道这可能是什么原因吗?

+0

显示您的will_paginate代码,请 – fl00r 2010-04-16 11:37:53

回答

1

如果你简单地声明与map.connect的路线,也可以打,如果你做错过为它如何路由是这样的:

link_to("Next", :page => 2) 

什么,你可能想要做的就是命名的路线和然后用这种方式:

link_to("Next", downloads_paginated_path(2)) 

帖:

map.downloads_paginated '/downloads/page/:page', :controller => 'downloads', :action => 'index' 

然后你按照名称使用路线e更可靠。

请注意,您的路径中有'/ downlods'而不是'/ downloads',但我不确定会导致所描述的问题。

+1

'will_paginate(@blah,{:controller =>'downloads'})'明确指定控制器也可以。 – 2010-04-30 21:50:51