0

我的网站上有一个搜索表单,它以这种形式提交网址(那些是标签 ID)

http://localhost:3000/tags?utf8=✓&q=2%2C12%2C44

它适用于第一个标签 ID,但不适用于其他标签 ID

  def self.search(query = {})
    output = self.scoped
    output = output.where(:id => query[:q])
  end

标签控制器:

  def index
    @tags = Tag.search(params)
  end
4

1 回答 1

0

ActiveRecord::Base.where当您想要一个具有多个匹配项的查询时,接受一个数组作为参数。要将查询参数转换为数组,您可以使用split

output = output.where(:id => query[:q].split(','))
于 2012-06-26T00:42:42.520 回答