Ruby on rails %不作为ActiveRecord默认范围查询的通配符使用?
我在Rails项目中使用ActiveRecord,我的一个类如下所示:Ruby on rails %不作为ActiveRecord默认范围查询的通配符使用?,ruby-on-rails,activerecord,wildcard,default-scope,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
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
classservermodel[“全名如“\/IT INFRASTRUCTURE\/HARDWARE\/SERVER\/PHYSICAL\/%”或全名如“\/IT INFRASTRUCTURE\/HARDWARE\/SERVER\/PHYSICAL\/%”]
作为可报告的行为
作为实体
结束
我的默认作用域方法返回一个格式错误的字符串-%'错误。我认为是%
通配符引起了所有的麻烦。我还尝试了不转义/
,所以不是这样
你能帮我吗
谢谢将其更改为:
default_scope :conditions => ["FULLNAME like ? OR FULLNAME like ?", '\/IT INFRASTRUCTURE\/HARDWARE\/SERVER\/PHYSICAL\/%', '\/IT INFRASTRUCTURE\/HARDWARE\/SERVER\/PHYSICAL\/%']