2012-10-25 57 views
1

我們使用will_paginate來顯示模型的關聯。我們有一些自定義路由,如下所示:will_paginate不使用當前路線

get '/profile/:slug' => 'talents#show', :as => :talent 
get '/profile/:slug/bio' => 'talents#show', :as => :talent_bio 
get '/profile/:slug/instagram' => 'talents#show', :as => :talent_instagram 

當我們使用talent_instagram路由時,所有分頁鏈接都會呈現爲默認路由。也就是說,不是,:

http:://0.0.0.0:3000/profile/some-talent/instagram?page=5 

這就是我們得到:

http:://0.0.0.0:3000/profile/some-talent?page=5 

如果我註釋掉第一兩條路線,則使用正確的鏈接。爲什麼will_paginate默認第一條路線?

+0

你有沒有嘗試翻轉這些路線的順序。即首先持續,持續到第一個? –

+0

是的,我最終做的 - 只是改變路線的順序 - 使這個答案,我會標記它是正確的! – koosa

回答

2

更改路線的順序

get '/profile/:slug/instagram' => 'talents#show', :as => :talent_instagram 
get '/profile/:slug/bio' => 'talents#show', :as => :talent_bio 
get '/profile/:slug' => 'talents#show', :as => :talent 

,因爲路由中指定它們的順序相匹配!

0

不知道這是正確的答案與否,但是這可能會幫助你Rails will_paginate custom route

+0

是的,我檢查了這一點,它的Rails 2.仍然認爲它可以幫助我,但沒有運氣 – koosa