Ruby / rspec无法识别与前一个模块同名的Ruby类
发布时间:2020-12-17 03:31:25 所属栏目:百科 来源:网络整理
导读:我有一个 ruby类,Feedbin,以前是模块的名称.当我尝试调用类中的任何方法时,抛出TypeError:`’:Feedbin不是类(TypeError) 当我更改类的名称,但附加一个例如s时,事情似乎按预期工作. 同样的程序也有一个名为Feedbin的模块,但模块不再存在. 旧: module Feedb
我有一个
ruby类,Feedbin,以前是模块的名称.当我尝试调用类中的任何方法时,抛出TypeError:`’:Feedbin不是类(TypeError)
当我更改类的名称,但附加一个例如s时,事情似乎按预期工作. 同样的程序也有一个名为Feedbin的模块,但模块不再存在. 旧: module Feedbin class Api end end 新: class Feedbin end 如何摆脱“Feedbin不是类”类型错误?是什么造成的? 解决方法
非类模块不能更改为类.一旦定义了(非类)模块,就无法将其更改为类.你可能有:
class Feedbin ... 在你拥有之前的某个地方 module Feedbin ... 将该类更改为模块,或使用其他名称而不是Feedbin. 或者,某些方法是否出现错误消息?某些方法只能在类上定义.例如,如果您调用Feedbin.new,或者在Feedbin上调用initialize,并将Feedbin更改为非类模块,则会导致错误.在这种情况下,请为非类模块使用不同的名称. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |