如何在Rails 3中创建关键字过滤查询?

时间:2012-03-23 10:47:53

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.1

class SearchController < ApplicationController
  def autocomplete
    @location=Location.find_by_sql("select * from locations where name like ?;",['%'+params[:term]+'%'])
    render  json: @location
  end
end

我认为像这样的查询没有按预期工作: 从名称为'%XXXX%';

的位置选择*

我也不能写这样的代码:     @ location = Location.find_by_sql(“select * from names where name like'?';”,  该函数将无法识别参数

那么我怎样才能实现这样的关键字过滤查询呢?

1 个答案:

答案 0 :(得分:0)

这应该有效:

@location = Location.where("name LIKE ?", "%#{params[:term]}%")