我正在使用装饰器类为我的模型添加一些功能。我只希望这些信息用于处理某些值,但不希望将任何内容保存到数据库中。
我有我的装饰类,比如:
class Deco
def initialize o
@target = o
end
def method_missing method, *args, &block
@target.send(method, *args, &block)
end
#my extra methods
end
我像这样使用它:
deco_model = Deco.new(model)
这里的问题是当我想将它deco_mode
与另一个相关联时,我得到一个类型不匹配错误,这是有道理的,但是如果我将以下方法添加到我的装饰器类中:
def class
@target.class
end
我仍然遇到同样的错误,但它说:Model(#aaaaaa) 预期,得到 Model(#aaaaa) 是的,“模型”将是我的模型的类,并且对象 id 在两种情况下都是相同的.. .所以如果对象ID相同,为什么我仍然得到异常?
谢谢