我可以按名称搜索客户。
但无法通过电话和电子邮件搜索任何数据。
有什么不对吗?
控制器
@customer = Customer.search do |q|
ap(params[:customer_query])
q.keywords params[:customer_query]
end
模型
class Customer < ActiveRecord::Base
searchable do
text :phone
text :name
text :email
end
end
数据表
+-----+----------+------------+------------+-
| id | name | email | phone |
+-----+----------+------------+------------+-
| 1 | 林x為 | trinity... | 033151006 |
| 2 | 林x仁 | percy.r... | 088277137 |
答案 0 :(得分:1)
你试过吗
@customer = Customer.search do
ap(params[:customer_query])
keywords params[:customer_query]
end.results
答案 1 :(得分:1)
首先,对于您的模型,如果它们是相同类型,则可以排列多个字段。此外,如果您的手机字段不是字符串,则需要将其索引为整数。您可能想尝试这样的事情:
searchable do
text :name, :email
integer :phone
end
对于您的控制器,您可能想尝试这样的事情:
@search = Customer.search do
fulltext params[:customer_query]
end
@customer = @search.results