postgresql全文搜索rails标题和描述

时间:2013-11-26 16:16:26

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

我正在尝试搜索带有标题和说明的模型,但出现以下错误。我希望能够搜索标题和描述以及工作类型。任何帮助都将非常感激。

  

PG :: DatatypeMismatch:ERROR:OR的参数必须是boolean类型,而不是   类型字符变化LINE 1:... T“refinery_jobs”。* FROM   “refinery_jobs”WHERE(标题或d ...                                                                ^:选择“refinery_jobs”。* FROM“refinery_jobs”WHERE(标题OR   description LIKE'%consultant%'AND job_type LIKE'%Contract%')LIMIT   10

这是我的查询

results << model.limit(RESULTS_LIMIT).where("title OR description LIKE ? AND job_type LIKE ?","%#{query}%","%#{job_type}%")

1 个答案:

答案 0 :(得分:0)

你的错误说postgresql希望OR的两边评估为真值。在你的sql中,这个错误属于OR的左侧,只是title。只需将您的查询更改为

where(
  "(title LIKE :query OR description LIKE :query) AND job_type LIKE :job_type",
  query: "%#{query}%",
  job_type: "%#{job_type}%"
)