2012-01-12 61 views
0

不能完全弄清楚這裏發生了什麼。所以在我的路線我有will_paginate與資源路線集合

sso.namespace(:admin) do |admin| 
    admin.resources :locations, :collection => {:search => :post} 

在視圖上生成分頁很好。這裏是我的查看代碼:

<%= will_paginate @search_locations, :class => "loc_pagination", :params => {:controller => 'sso/admin/locations', :action => 'search'}, :style => "text-align: center;" if @search_locations %> 

問題是,當我點擊鏈接時,它會觸發GET請求並在搜索參數中進行搜索。這是服務器日誌中的參數。

Parameters: {"action"=>"show", "id"=>"search", "page"=>"2", "controller"=>"sso/admin/locations"} 

生成的html代碼聽起來很合理,但我無法弄清楚它做錯了什麼。

回答

1

您已將搜索操作配置爲僅響應post請求。當您嘗試訪問搜索結果的第二頁時(通過獲取請求),show route將顯示響應。嘗試更改:collection => { :search => :any }並將搜索詞追加到傳遞給will_paginate的參數。

+0

不知道我能做什麼:任何。用軌道總是很簡單。 – thatmiddleway 2012-01-13 00:19:52

+0

我相信你也可以更清楚地使用'[:get,:post]'來避免任何額外的混淆。 – 2012-01-13 00:30:25