对于我的Rails Gemfile,我添加了一个新的gem。它的使用方式如下:
Email::Client
我现在遇到的问题是我的rails应用程序中还有一个名为Email
的课程。现在,有时当我尝试初始化它时,我收到以下错误:
Email.new # >> undefined method 'new' for Email:Module
可能是因为Email
是宝石中的Module
。我该如何解决这个问题?有没有办法命名宝石模块?我不想重命名我的电子邮件类。
答案 0 :(得分:2)
我不想重命名电子邮件类。
然而,这是你必须要做的。您的代码是您唯一控制的代码。重命名/别名(MyEmail
)或命名空间(MyApp::Email
)。
Email
也是一个类,会发生什么。突然间,你所有的方法都消失了。您添加或更改方法,您的电子邮件看不到它。这可能会导致令人沮丧的调试会话。