【发布时间】:2014-07-04 11:31:17
【问题描述】:
我正在搜索产品的标题和描述。它很酷,但我只需要搜索即可获得基于结果的优先级。就像标题匹配的结果产品一样,然后是描述。 这是我的控制器代码:
def products
scope = Product.joins(:vendor).enabled.includes(:vendor, :images)
# Make sure to select only available vendors
scope = scope.where("vendors.enabled = ?", true)
# Filter by vendor
if params[:vendor_id].present?
scope = scope.where(vendor_id: params[:vendor_id])
end
if params[:search].present?
scope = scope.filter(params[:search])
end
scope
end
这里是模型。产品.rb
def self.filter(search)
where("title ILIKE '%#{search}%' OR description ILIKE '%#{search}%'")
end
【问题讨论】:
标签: postgresql sorting search ruby-on-rails-4