Rails搜索添加更多项目

时间:2013-07-26 07:53:07

标签: ruby-on-rails search ruby-on-rails-3.2

以下是产品型号中的搜索代码:

def self.search(search)
  if search
    where('lower(name) LIKE ?', "%#{search}%")
  else
    scoped
  end
end

问题是它只是搜索名称,我如何添加更多搜索项目,如描述。

我尝试通过此代码添加它,但它引发了错误:

  def self.search(search)
  if search
    where('lower(name) LIKE ? OR description LIKE ?', "%#{search}%")
  else
    scoped
  end
end

错误是:

错误的绑定变量数(1为2):lower(name)LIKE?或描述像?

我在控制器中的代码:

@user_products = Product.search params[:search]

1 个答案:

答案 0 :(得分:1)

您错过了另一个搜索参数,以便在查询中汇总说明。 试试这个

def self.search(search)
  if search
    where('lower(name) LIKE ? OR description LIKE ?', "%#{search}%", "%#{search}%")
  else
    scoped
  end
end