Использование драгоценного камня ice_cube Ruby в IRB

Я пытаюсь использовать гем Ruby под названием ice_cube в IRB, но он не работает:

[~]$ rvm gemset create ice
'ice' gemset created (/home/joe/.rvm/gems/ruby-1.9.2-p320@ice).

[~]$ rvm gemset use ice
Using ruby-1.9.2-p320 with gemset ice

[~]$ gem install ice_cube
Fetching: ice_cube-0.8.0.gem (100%)
Successfully installed ice_cube-0.8.0
1 gem installed
Installing ri documentation for ice_cube-0.8.0...
Installing RDoc documentation for ice_cube-0.8.0...

[~]$ irb --simple-prompt
>> require 'ice_cube'
=> true

>> schedule = Schedule.new(Time.now)
NameError: uninitialized constant Object::Schedule
    from (irb):2
    from /home/joe/.rvm/rubies/ruby-1.9.2-p320/bin/irb:16:in `<main>'

Что я делаю неправильно? (Я начинающий Ruby-программист.)


person Asher Walther    schedule 17.07.2012    source источник


Ответы (3)


Так должно быть:

schedule = IceCube::Schedule.new(Time.now)
person Asher Walther    schedule 17.07.2012
comment
Большая часть документации по драгоценному камню не проясняет этого. - person Asher Walther; 17.07.2012
comment
Согласованный. Довольно вопиющая оплошность - person stuartchaney; 28.01.2014
comment
См. ниже... это упоминается в документации. - person Matteo; 31.03.2016

include IceCube
schedule = Schedule.new(Time.now)

Или вы можете сначала включить модуль в глобальное пространство имен, а затем использовать все, что находится в этом модуле.

person Simon Polak    schedule 04.08.2013

Была аналогичная проблема, попробуйте перезапустить приложение Rails.

person Ronak Jain    schedule 23.07.2014