ruby-on-rails - Rails 简单搜索

标签 ruby-on-rails ruby

我的基本搜索不起作用,我不明白为什么。

在我的模型中我有这个

def self.search(search)
  if search
    search_condition = "%" + search + "%"
    find(:all, :conditions => ['jobTitle LIKE ? OR jobDescription LIKE ?', search_condition, search_condition])
  end
end

参数确实传递给它,然后出现错误:

PG::InvalidTextRepresentation: ERROR: invalid input syntax for integer: "all" LINE 1: ...ngs".* FROM "postings" WHERE "postings"."id" IN ('all', '--... ^ : SELECT "postings".* FROM "postings" WHERE "postings"."id" IN ('all', '--- :conditions: - jobTitle LIKE ? OR jobDescription LIKE ? - "%drew%" - "%drew%" ')

我做错了什么吗?

最佳答案

您正在使用过时的查找语法。使用 where 代替:

 def self.search(search)
   if search
     search_condition = "%" + search + "%"
     where(['jobTitle LIKE ? OR jobDescription LIKE ?', search_condition, search_condition])
   end
 end

关于ruby-on-rails - Rails 简单搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25416465/

相关文章:

ruby-on-rails - 在 Ruby 和 Redis 中匹配现场玩家的最佳策略?

ruby-on-rails - Rails 5 - 对象关系阻抗以及如何构造多个继承的类/表

ruby-on-rails - 在 RubyMine 中调试特定测试/规范

ruby-on-rails - 为 RGeo Point 设置单个坐标

ruby-on-rails - 如何遍历年和周

ruby-on-rails - Sequel 与 ActiveRecord 结合使用有什么问题吗?

mysql - 如何在 Ruby on Rails 中创建 tinyint(2) 或 tinyint(3) 类型的列?

ruby-on-rails - 如何在 text_field 中设置默认值?

ruby - Heroku production.log 文件位置

arrays - Ruby 选择方法 : check number of items that are selected