%不能用作ActiveRecord default_scope查询的通配符?

时间:2011-08-11 08:55:54

标签: ruby-on-rails activerecord wildcard default-scope

我在我的Rails项目中使用ActiveRecord,我的一个类看起来像这样:

class ServerModel < ActiveRecord::Base

  set_table_name "S985_947_MODELS_VW"
  set_primary_key "model_barcode"

  default_scope :conditions => ["FULLNAME like '\/IT INFRASTRUCTURE\/HARDWARE\/SERVER\/PHYSICAL\/%' OR FULLNAME like '\/IT INFRASTRUCTURE\/HARDWARE\/SERVER\/PHYSICAL\/%'"]

  acts_as_reportable
  acts_as_entity
end

我的default_scope方法返回malformed format string - %'错误。我认为导致所有问题的是%通配符。我也试过没有逃避/,所以不是它......

你能帮帮我吗?

由于

1 个答案:

答案 0 :(得分:2)

将其更改为:

default_scope :conditions => ["FULLNAME like ? OR FULLNAME like ?", '\/IT INFRASTRUCTURE\/HARDWARE\/SERVER\/PHYSICAL\/%', '\/IT INFRASTRUCTURE\/HARDWARE\/SERVER\/PHYSICAL\/%']