我的应用程序中有一个典型的搜索工具,它返回一个结果列表,可以对这些结果进行分页、排序、使用不同的records_per_page值进行查看等。每个选项都由查询字符串中的参数控制。一个简化的例子:
/search?q=test&page=2
现在假设我需要显示一组将records_per_page 值设置为10、20、30 的链接。每个链接必须包含现有的查询参数(可以是很长的集合)以及新的per_page 参数。
/search?q=test&page=2& ... &per_page=10
/search?q=test&page=2& ... &per_page=20
/search?q=test&page=2& ... &per_page=30
是否有一种简单的方法可以仅使用 link_to 帮助程序来完成此操作,或者我需要以某种方式解析并重现以前请求中的查询字符串?
请您参考如下方法:
link_to 'Link', request.query_parameters.merge({:per_page => 20})