[英]Overriding existing model in Rails 4
我试图覆盖现有的活动记录模型,但是新的活动记录模型没有旧的活动记录模型中的方法。 这是我尝试使用的代码
class ModelA < ActiveRecord::Base
def method_modela_1
logger.info "I am in method_modela_1"
end
def method_modelb_2
logger.info " I am in method_modelb_2"
end
end
接下来,我用ModelB覆盖ModelA
class ModelB < ModelA
def foo
logger.info "foo method from model B"
end
end
所以现在我试图编写一个代码,尝试使用以下代码访问find_or_create_
some_variable = ModelB.find_or_create_by(:id => 1234)
但是它说***** NoMethodError Exception: undefined method 'find_or_create_by' for ModelB:Module**
我想念什么? 为了记录,我使用的是'rails', '4.2'
关键字为“ NoMethodError异常:ModelB: 模块的未定义方法'find_or_create_by”。
您在某处有一个module ModelB
,由于加载顺序和/或恒定的查找规则,它使您的模型module ModelB
了阴影。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.