0
在Python中,将类,方法,变量等导入python shell由import MyClass
完成。我想在Ruby shell中做同样的事情。我有以下代码:从irb导入(需要)Ruby类
module Search
class ApartmentSearch
attr_accessor :hood, :minPrice,
:maxPrice, :bed,
:bath
def initialize(hood = "",
minPrice = 0,
maxPrice = 0,
bed = 0,
bath = 0)
@hood = hood
@minPrice = minPrice
@maxPrice = maxPrice
@bed = bed
@bath = bath
end
end
end
我可以require '/path/to/module/search
导入模块与Ruby的外壳,但是当我再尝试通过调用Search.ApartmentSearch.new()
,我收到以下错误创建一个新的ApartmentSearch
对象:NoMethodError: undefined method 'ApartmentSearch' for Search:Module
,这是因为ApartmentSearch
是一类,而不是一种方法,所以在某种程度上是明显的。我在这里做错了什么?我的目标是让课程保持模块化并在需要时进口。
你想做的事:'搜寻:: ApartmentSearch.new()'和而不是'Search.ApartmentSearch.new()' – bjhaid
啊,那很好。我没有发现当我搜索文档时,但我想我回想起使用类似网络的东西:HTTP.method –
@bjhaid:您的评论应该是(接受的)答案 – Johnsyweb