我正在使用 Ruby 控制台。我通过使用开始它Rails console
,然后确实需要'我的文件的路径',它工作正常。
该文件如下所示:
module App
module Tools
module Pollers
class Kpi
attr_reader :start_time,:stop_time
def initialize(start_time,stop_time)
@start_time = start_time
@stop_time = stop_time
end
def create_social_audiences
....
所以我要做的是在控制台中像这样声明停止和开始时间
var end_date = new Date(2012, 7, 1);
var start = new Date(2012, 5, 1);
然后我尝试在这个文件上调用 .new 并得到这个错误
>> kpi = App::Tools::Pollers::Kpi.new
ArgumentError: wrong number of arguments (0 for 2)
from (irb):7:in `initialize'
from (irb):7:in `new'
from (irb):7
>>
但奇怪的是,如果我执行这个尝试传递变量的命令,它会起作用:
>> kpi = App::Tools::Pollers::Kpi.new(start , end_date)
=> #<App::Tools::Pollers::Kpi:0x11489e198 @start_time=nil, @stop_time=nil>
但是当我尝试将 varialbes 设置为 nil 以外的任何值时,我得到的错误是 initialize 是一个私有方法:
?> kpi.initialize(start, end_date)
NoMethodError: private method `initialize' called for #<App::Tools::Pollers::Kpi:0x11489e198>
from (irb):15
关于这里可能发生的错误有什么想法吗?
谢谢!!