Rails - Active Record Search" .where"与相同标准的或声明

时间:2016-04-22 02:10:29

标签: ruby-on-rails ruby rails-activerecord

在我的Rails应用中,我试图让用户使用与产品相匹配的关键字或关键词来搜索产品'描述和名称。

根据文档,我写的是这样的:

def productSearch
  @results = 0
  if !params[:searchInput].nil?
    @results = 1
    @searchInput = params[:searchInput]
    @searchCriteria = "%#{params[:searchInput]}%"
    @productList = Product.where("description like ? or name like ?", @searchCriteria, @searchCriteria)
  end
end

让我感到沮丧的是这条线:

@productList = Product.where("description like ? or name like ?", @searchCriteria, @searchCriteria)

是否有将产品的描述和名称与相同的搜索条件相匹配的简写?

我还要提到我对Ruby on Rails相当新,这是一个学校项目,我必须在我的团队中建立一个电子商务网站,所以对此有所帮助非常感谢。

1 个答案:

答案 0 :(得分:2)

尝试:

@productList = Product.where("description like :search or name like :search", search: @searchCriteria)