我收到此错误:
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
如果我更改模型名称,错误就会消失。 我不明白为什么 - 考虑到名称间距 - 名称会碰撞。 如何在不将模型重命名为意义较小的名称的情况下防止冲突?
问题不是与错误密切相关。 文件app/models/result/some_other_result.rb:
:
module Result
class LoginFailed < Failed
我正在快速重构一点。 有些日子我想念编译器。