我收到此错误:
app/models/result/login_failed.rb:2:in `<module:Result>': superclass mismatch for class LoginFailed (TypeError)
似乎这是app/models/result/login_failed.rb
:
module Result
class LoginFailed < Failed
以某种方式与此lib/services/providers/errors/login_failed.rb
发生冲突:
module Services
module Providers
module Errors
class LoginFailed < StandardError
我尝试将模型更改为此,但得到相同的错误。
class Result::LoginFailed < Failed
如果我更改了型号名称,则错误消失。我不明白为什么 - 鉴于命名空间 - 名称是相互冲突的。如何在不将模型重命名为不太有意义的情况下防止碰撞?
答案 0 :(得分:1)
问题并非接近错误。文件app/models/result/some_other_result.rb:
:
module Result
class LoginFailed < Failed
我正在快速重构一点。有些日子我想念编译器。