编辑: See below unanswered part II.
(ANSWERED) 一世。 附加URL
我试图通过使用基本参数指南在我的视图中堆叠参数:
users_path(:a => 'test')
以上将返回: ?a=test
但是,我希望能够连续点击:
users_path(:b => 'goat')
让它回来 ?a=test&b=goat
有关如何堆叠/附加这些URL参数的任何建议?
(无解答) II。 删除参数
如果我想添加一个 [x]
链接在参数设置旁边,我怎么能删除它各自的参数?
(ANSWERED) III。 删除 page
参数
我想删除 page
用户选择参数选择时的参数。有没有办法做到这一点?很明显,如果我选择“运动”作为参数类别,例如,分页不应该保留在第26页。
如果要附加当前参数,可以尝试这样做:
users_path(params.merge(:b => 'goat'))
您可能想要编写一个帮助您的辅助方法:
def merged_with_current_params(additional)
params.merge(additional)
end
至于你问题的第二部分,你可能想要扩展传入 params
进入一系列复选框,其名称和值设置得恰当。禁用复选框并提交表单将导致从请求中删除该参数。
去除 :page
参数,将其添加到您的助手:
params.except(:page).merge(additional)
您可以使用 request.query_parameters
只使用所需的参数,如下所示:
users_path(request.query_parameters.merge(:b => 'goat'))