Rails 使用 mongoid 使用 ahoy gem 进行异步地理编码的序列化错误

Rails serialization error for async geocoding with ahoy gem using mongoid

我有一个 Rails 5 应用程序,运行 一个用于应用程序数据的 postgresql 数据库和 MongoDB (mongoid) for analytics, generated by the fantastic ahoy gem.

一切正常,直到我在 config/initializers/ahoy.rb 中切换到异步地理编码,这会生成以下错误:

ActiveJob::SerializationError (Unsupported argument type: Visit):

该应用正在使用 delayed_job 进行后台处理。

我有解决此问题的方法,或者这是由 mongoid 和 delayed_job 之间的不兼容引起的?

尝试将 GlobalId mixin 添加到您的模型中

class Visit
  include GlobalID::Identification
end