创建与数组的链接

时间:2013-01-30 15:56:22

标签: ruby-on-rails ruby ruby-on-rails-3

我需要使用href格式化链接,例如items /?category_id [] = 1& category_id [] = 2& category_id [] = 3 这是用于分面搜索。

link_to "Super Categories", params.merge(category_id: [1,2,3])

但是我无法达到预期的效果。方括号在GET请求中进行编码,以便生成数组。

1 个答案:

答案 0 :(得分:3)

如果您的观点中包含以下内容

link_to "Super Categories", params.merge(category_id: [1,2,3])

查询字符串的category_id部分看起来像

?category_id%5B%5D=1&category_id%5B%5D=2&category_id%5B%5D=3

这些编码括号没有问题;一旦Rails收到GET请求,params[:category_id]将再次成为["1","2","3"]。您可以使用

轻松将其转换回整数值
params[:category_id].map(&:to_i) # [1,2,3]