Выгрузить рубиновый класс - PullRequest
15 голосов
/ 06 августа 2010

В файле a.rb есть следующее:

require foo

, и мне нужно выгрузить foo, чтобы загрузить foo из b.rb, c.rb и других файлов.

Как я могу это сделать?

Ответы [ 2 ]

20 голосов
/ 06 августа 2010
Object.send(:remove_const, :Foo)

при условии, что вашему классу присвоено имя Foo.

2 голосов
/ 12 июля 2012

Я не уверен насчет части выгрузки, но использование load вместо require всегда перезагрузит файл.Однако, когда вы используете load, вам нужно будет включить .rb, чтобы в вашем случае это было load 'foo.rb'.

См. http://www.fromjavatoruby.com/2008/10/require-vs-load.html

Kernel # load docs
Ядро # требуется документ

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...