Ruby on rails Rails-活动记录搜索";。其中;具有相同标准的或针对相同标准的陈述

Ruby on rails Rails-活动记录搜索";。其中;具有相同标准的或针对相同标准的陈述,ruby-on-rails,ruby,rails-activerecord,Ruby On Rails,Ruby,Rails Activerecord,在我的Rails应用程序中,我试图让用户使用与产品描述和名称匹配的关键字或关键词搜索产品 根据文件,我写的是这样的: def productSearch @results = 0 if !params[:searchInput].nil? @results = 1 @searchInput = params[:searchInput] @searchCriteria = "%#{params[:searchInput]}%" @productList =

在我的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相当陌生,这是一个学校项目,我必须与我的团队一起建立一个电子商务网站,因此非常感谢您的帮助。

尝试:


@productList=Product.where(“类似于:search的描述或类似于:search的名称”,search:@searchCriteria)

什么是
:search
?你指的是我的
:searchInput
参数,还是一个特殊的ruby关键字?啊,没关系,我想我看到你在做什么了。我刚测试了一下,它能用。非常感谢!您好,:搜索只是一个符号,请将其视为一个变量。您可以随意命名:)只需确保它与结尾部分匹配('search:')