david
(David Taylor)
2
嗯,添加前导的 :: 确实可以解决问题……但它不应该是必需的 
鉴于该调用来自 ::Jobs::ProcessPost 内部,Ruby 应该会向上查找。首先它会查找 ::Jobs::ProcessPost::Jobs,然后是 ::Jobs::Jobs,最后是 ::Jobs 模块。
你看到的错误表明有人定义了 ::Jobs::Jobs……这很奇怪!在我自己的开发实例上查看一下:
[1] pry(main)> Jobs::Jobs
=> Jobs::Jobs
[2] pry(main)> Jobs::Jobs.constants
=> [:RemapOldBotImages, :GrantBadges]

看起来 discourse-narrative-bot 中的这些行导致了问题。如果我注释掉它们,问题就解决了。
好消息是,这是仅在开发环境中出现的——与作业的文件路径与模块名称不匹配有关。这是一个清理问题的 PR:
感谢你的报告 @merefield
4 个赞