我在向我的应用添加自定义类时遇到了困难.
这是一个蜘蛛网站并返回结果的类.
我发现的是我需要将它放在lib文件夹中,我已经将自动加载路径指向lib文件夹..这是我把它放在的地方:
# /lib/booking_spider.rb
class BookingSpider
def cities( city )
return @cities
end
end
Run Code Online (Sandbox Code Playgroud)
这就是我在控制器中调用它的方式:
p BookingSpider.cities( params[:search][:city] )
Run Code Online (Sandbox Code Playgroud)
此错误不断弹出:
undefined method `cities' for BookingSpider:Class
Run Code Online (Sandbox Code Playgroud)
谁能告诉我我在这里失踪了什么?
谢谢!
Jer*_* B. 11
您正在尝试将该方法用作类方法,但它被定义为实例方法.改为:
class BookingSpider
def self.cities(city)
return @cities
end
end
Run Code Online (Sandbox Code Playgroud)
下面是对类和实例方法之间差异的一些解读:Ruby中的方法类型
| 归档时间: |
|
| 查看次数: |
3811 次 |
| 最近记录: |