如何将URL参数值转换为数组?

时间:2013-08-07 14:51:39

标签: ruby-on-rails-3

我正在开发一个Rails 3.2应用程序。 我需要从URL参数中获取值并将它们添加到数组中 我可以使用.to_sentence将它们打印出来(用于搜索)。

这些是我的参数(某些搜索页面上有更多信息)。

search=true&title=s&client=&tags=&status=&start_date=&end_date=

我试过这个,但这不仅仅是值,而是键和值。:

params.map(&:to_s)

更新

我想出了如何获取值,但我不需要映射nil的值。

<%= params.each_value.map{|value| value }.to_sentence %>

1 个答案:

答案 0 :(得分:2)

试试这个:

values = params.values.reject(&:blank?) # ["true", "s"]

values返回哈希中的所有值,包括空字符串

.reject(&:blank?).reject { |v| v.blank? }的简写。 reject返回一个新的Hash,跳过blank?方法返回true的所有值,因此这将消除所有空值。请注意,对于空字符串,blank?也会返回true。

请参阅这些方法的文档: