编写活动记录以基于表字段中的所有值进行搜索

时间:2016-03-29 06:54:13

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

我想基于所有位置进行搜索,我将位置存储为cookie。 我想搜索并获得这样的结果,列出位置Delhi NCR or Mumbai or Pune or Hyderabad or Bangalore or Chennai or Coimbatore or Cochin

中的属性

我写了这样一条活跃的记录:

@location = cookies[:location_id] (here iam getting all locations)
@properties=Property.where("location LIKE ?", "%#{@location}%")

所以,我得到了这样的SQL查询:

SELECT * FROM `properties` WHERE (location LIKE '%Delhi NCR,Mumbai,Pune,Hyderabad,Bangalore,Chennai,Coimbatore,Cochin%')` 

用逗号分隔,如果表格中存在任何位置名称,也不会获得搜索结果。 如何根据所有位置进行搜索并列出是否存在?

请帮忙。 任何帮助都是值得赞赏的

1 个答案:

答案 0 :(得分:1)

@location = cookies[:location_id]
@properties=Property.where("location IN (?)", @location.split(","))

试试这个