我有一個可以排序,搜索和過濾的列表視圖。從該列表視圖中,用戶可以通過多個步驟編輯項目。最後,在編輯和檢查更改後,用戶返回列表。現在我想讓列表使用用戶之前設置的相同的排序,搜索詞和過濾器,並顯示正確的結果。如何存儲以後再次使用的動作參數
顯示列表操作時,多個參數(排序,搜索,過濾)如何存儲和重用?
可能不理想的方式,我認爲的:通過所有需要的參數
- 通。如果在兩個列表動作調用之間涉及多個操作,則幾乎不工作
保存會話對象中的參數。這似乎需要大量的代碼來處理多個參數(檢查參數傳遞給動作,儲存新的值,如果參數沒有被通過,從會話中獲取舊的參數,處理空字符串參數):
Long longParameter if(params.containsKey('longParameter')) { longParameter = params.getLong('longParameter') session.setAttribute('longParameter', longParameter) } else { longParameter = session.getAttribute('longParameter') as Long params['longParameter'] = longParameter }
我已經運行的代碼,它似乎工作,但我沒有測試的情況下,以證明它:-) – sbglasius
如果您使用Grails <3,可以在Grails過濾器中使用相同的概念 – sbglasius