過去3天裏我一直在嘲笑我(不開玩笑!!!)....這看起來很簡單,但我無法做到。所以我在這裏提出這個問題,並且願意接受任何可行的方法。更新控制器上的param和調用動作點擊?
背景:提交時的高級搜索表單用於生成對服務器來說太大的URL。所以表單必須通過POST提交。到現在爲止還挺好。表單提交成功,並顯示結果。只剩下問題是分頁。
由於這是一個POST調用,它排除了分頁。雖然will-pagination會將param頁面合併到現有的params中,但問題是它會在url上顯示,導致相同的錯誤。
問:那麼有沒有什麼辦法,如果用戶點擊一個鏈接接下來,我可以
一)更新頁面PARAM
二)保留現有的PARAMS
c)在不更改URL
d)將控制權轉移回控制器中的操作?
迄今爲止唯一的解決方案是隱藏窗體,重新填充窗體的值並重新提交。這個表單非常複雜,所以如果有更清晰的方式我想知道。
不,我絕對不是在尋找這個。我的表單方法是POST。表格成功申請。之後,我得到了一組結果,頁面上有50個條目,點擊時可以對列進行排序。現在提交表單後,我的網址不會改變。直到這裏,我很高興,生活很棒。但是當我點擊可排序的鏈接或意願分頁的鏈接時,它們會將params合併到我的url中,而不是僅保存它們。所以我正在尋找一種黑客攻擊手段,在控制器內部,我可以剝去這些參數的網址,而我仍然可以通過params訪問這些網址。我有道理嗎? – 2013-03-24 08:45:15
我這麼認爲。您希望用戶能夠點擊列標題。這通常會將sort_column = foo添加到url中的查詢字符串中,然後重新加載將該params [sort_column]設置爲foo以便正確顯示字段的頁面。但是,您不希望顯示?sort_column = foo。所以你的網址仍然是http:// site_url/orders/advanced_search而不是http:// site_url/orders/advanced_search?sort_column = foo – 2013-03-24 08:51:38
是的,你完全理解了我的問題。現在任何運氣與答案? :) – 2013-03-24 09:03:48