【发布时间】:2014-04-21 13:28:06
【问题描述】:
我有一个使用Jquery TokenInput 自动完成产品的字段。要查找我正在做的产品:
def token
@products = Product.order(:name)
respond_to do |format|
format.html
format.json { render json: @products.where("name ILIKE ?", "%#{params[:q]}%").limit(10).order('name DESC') }
end
end
如果我有一个名为 Rice 的产品并在该字段上进行搜索,输入“r”、“ri”和“ric”,我希望最接近的结果是与查询匹配的结果。相反,如果我在数据库中有超过 10 种不同类型的大米,结果将是“乱序”,Rice 在 10 种成熟大米中排在第 6 或第 9 位。对我来说,米饭应该排在第一位,而不是饭团或蛋糕,但我得到的却是:
Brown Rice # First result in Tokeninput
Rice Cake
Yellow Rice
Long Grain Rice
Rice Ball
Chinese Rice
Super Rice
Rice
New Rice
The Super Rice Game
即使我准确地输入“Rice”,我也会得到与上述类似的内容。如果输入r, ri, ric or rice,我希望它成为第一选择,但我的结果不相信顺序,他们只想要混乱。这将如何实现?
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4 jquery-tokeninput