Rails has_one关系不起作用,但只在Heroku工作者内部

时间:2017-12-04 14:57:18

标签: ruby-on-rails heroku

`我们有以下has_one关联:

class InspectionSettings < ApplicationRecord
  has_one :inspection_evaluation_lights, dependent: :destroy
end


class InspectionEvaluationLights < ApplicationRecord
  belongs_to :inspection_settings
end

两个模型名称都没有变形,在inflections.rb中注明。

这一切都按预期工作,像InspectionSettings.find(xy).inspection_evaluation_lights这样的ActiveRecord方法会返回人们期望的对象。

除非在Heroku工作线程实例中运行,否则会引发undefined method inspection_evaluation_lights for InspectionSettings class错误。

我尝试了各种解决方法,例如为两个关系指定class_nameinverse_of,但无济于事。

我曾经见过的最奇怪的错误。

1 个答案:

答案 0 :(得分:0)

好的,问题是在`InspectionSettings&#39;中包含了一个ActiveSupport :: Concern。模型。

为什么只有在Heroku工作者中调用ActiveRecord方法时,才会出现此问题。