首页 > 解决方案 > ActiveJob 自定义序列化程序 - 未初始化的常量 NameError

问题描述

我正在尝试按照ActiveJob Rails Guide向ActiveJob添加自定义序列化程序。我有以下课程,最初在文件中,app/lib/money_serializer.rb

  class MoneySerializer < ActiveJob::Serializers::ObjectSerializer
  # ... 
  end

而在config/application.rb

  # ...
  config.active_job.custom_serializers << MoneySerializer
  # ...

我不断收到uninitialized constant MoneySerializer (NameError)提示,序列化程序没有在启动时加载,并尝试将其放置在不同的位置(包括在 config/initializers 下),但没有任何运气。

我在这里想念什么?我应该在哪里放置 ActiveJob 序列化程序?

标签: ruby-on-railsrails-activejob

解决方案


如果对任何人有帮助,

当我将序列化程序和配置都放在初始化程序中时,它似乎可以工作

  class MoneySerializer < ActiveJob::Serializers::ObjectSerializer
  # ... 
  end

  config.active_job.custom_serializers << MoneySerializer

在这里上课感觉很奇怪。还有其他建议吗?


推荐阅读