在页面重新加载时重置 Filterrific 过滤器
Reset Filterrific Filters on Page Re-load
我正在使用 ClearCove 的 filterrific 插件。
我想在重新加载页面时重置过滤器。目前,它保留了最后一个搜索过滤器,这让 IMO 感到困惑。
这是我的控制器:
def index
@filterrific = initialize_filterrific(
current_user.patients,
params[:filterrific],
:select_options => {
sorted_by: Patient.options_for_sorted_by },
) or return
@patients = @filterrific.find.page(params[:page])
@templates = Template.all
gon.root_url = root_url
end
我可以用 hack-y 的方式做到这一点,即使用 Jquery 单击视图中呈现的 reset_filterrific_url。但这似乎是错误的。如何在加载页面时清除过滤器?
filterrific 参数保留在浏览器会话中。您可以通过添加 persistence_id
选项来禁用会话持久性:
@filterrific = initialize_filterrific(
current_user.patients,
params[:filterrific],
:select_options => {
sorted_by: Patient.options_for_sorted_by
},
:persistence_id => false,
) or return
更多信息请见 filterrific documentation。
我正在使用 ClearCove 的 filterrific 插件。
我想在重新加载页面时重置过滤器。目前,它保留了最后一个搜索过滤器,这让 IMO 感到困惑。
这是我的控制器:
def index
@filterrific = initialize_filterrific(
current_user.patients,
params[:filterrific],
:select_options => {
sorted_by: Patient.options_for_sorted_by },
) or return
@patients = @filterrific.find.page(params[:page])
@templates = Template.all
gon.root_url = root_url
end
我可以用 hack-y 的方式做到这一点,即使用 Jquery 单击视图中呈现的 reset_filterrific_url。但这似乎是错误的。如何在加载页面时清除过滤器?
filterrific 参数保留在浏览器会话中。您可以通过添加 persistence_id
选项来禁用会话持久性:
@filterrific = initialize_filterrific(
current_user.patients,
params[:filterrific],
:select_options => {
sorted_by: Patient.options_for_sorted_by
},
:persistence_id => false,
) or return
更多信息请见 filterrific documentation。