覆盖 Rails 中的现有模型 4

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

接下来我用模型 B 覆盖模型 A

class ModelB < ModelA
   def foo
      logger.info "foo method from model B"
   end
end

所以现在我正在尝试使用以下代码

编写试图访问 find_or_create_by 的代码
some_variable = ModelB.find_or_create_by(:id => 1234)

但是它说 ***** NoMethodError Exception: undefined method 'find_or_create_by' for ModelB:Module**

我错过了什么?作为记录,我正在使用 'rails', '4.2'

关键词是"NoMethodError Exception: undefined method 'find_or_create_by' for ModelB:Module".

您在某处有一个 module ModelB,并且由于加载顺序 and/or 常量查找规则,它会影响您的模型。