Автоматическая загрузка классов Rails в пользовательский каталог

В Rails есть функция, при которой модели, контроллеры, представления, библиотеки и т. д. автоматически загружаются, когда они необходимы. Это особенно полезно в режиме разработки, где они также автоматически перезагружаются.

Как заставить Rails выполнять автоматическую загрузку туда, где он не ожидает загрузки файлов? Скажем, я создаю папку app/addons или что-то в этом роде, и я хочу, чтобы туда загружались классы так же, как загружаются модели. Итак, если бы у меня было app/addons/foo.rb, я хочу иметь возможность вызывать класс Foo.


person Karl    schedule 29.07.2010    source источник


Ответы (2)


В вашем config/environment.rb добавьте следующую строку в блок Rails::Initializer.run:

config.load_paths += %W( #{RAILS_ROOT/app/addons} )

person Jason Noble    schedule 29.07.2010

В вашем окружении.rb должна быть такая строка:

config.load_paths += %W( #{RAILS_ROOT}/lib/ #{RAILS_ROOT}/app/addons/ )

Просто добавьте еще один путь, который вам нужен.

person retro    schedule 29.07.2010