12
想知道是否可以使用活動管理員使用默認值過濾?這將有助於爲管理員用戶預加載數據。 [:Q]爲空或PARAMS [:範圍]空ActiveAdmin - 使用默認值過濾器
在你需要設置過濾器,如果PARAMS某些情況下:
filter :country, :default=>'US'
想知道是否可以使用活動管理員使用默認值過濾?這將有助於爲管理員用戶預加載數據。 [:Q]爲空或PARAMS [:範圍]空ActiveAdmin - 使用默認值過濾器
在你需要設置過濾器,如果PARAMS某些情況下:
filter :country, :default=>'US'
您可以通過定義的before_filter
before_filter :only => [:index] do
if params['commit'].blank?
#country_contains or country_eq .. or depending of your filter type
params['q'] = {:country_eq => 'US'}
end
end
UPD做
所以這可能會更好地工作
before_filter :only => [:index] do
if params['commit'].blank? && params['q'].blank? && params[:scope].blank?
#country_contains or country_eq .. or depending of your filter type
params['q'] = {:country_eq => 'US'}
end
end
改編的Fivells答案能夠正確使用示波器和下載。感到哈克,但似乎做這項工作。在評論中註明意圖。
before_filter only: :index do
# when arriving through top navigation
if params.keys == ["controller", "action"]
extra_params = {"q" => {"country_eq" => "US"}}
# make sure data is filtered and filters show correctly
params.merge! extra_params
# make sure downloads and scopes use the default filter
request.query_parameters.merge! extra_params
end
end
它就像一個魅力。謝謝Fivell! – TonyTakeshi
總是歡迎!) – Fivell
這應該放在app/admin/model.rb文件中的控制器塊中。例如 控制器做 before_filter ... 結束 –