Как загрузить плагин Rails из директории site_ruby? - PullRequest
0 голосов
/ 07 февраля 2011

У меня установлен плагин (называемый XYZ) в

/usr/lib/ruby/site_ruby/1.8/XYZ

Обратите внимание, что это не rubygem, а "родная" библиотека ruby ​​sitelib. Теперь.

Я добавил эту строку в config / environment.rb:

config.gem "XYZ"

Проблема в том, что Rails не загружает плагин. Есть ли хитрость для принудительной загрузки из каталога ruby_site? Рельсы 2.3.10

Спасибо

1 Ответ

2 голосов
/ 08 февраля 2011

Я до сих пор не уверен, зачем вам это нужно (и я думаю, что есть лучший способ), но если это ваш единственный вариант, то здесь ...

В отличие от драгоценных камнейкоторые просто 'обязательны', Rails загружает плагины, запуская eval в файле init.rb плагина (см. здесь для 2.3.10, если вам интересно).Папка 'site_ruby' находится в пути загрузки Rails, но файлы там будут обрабатываться как обычные библиотеки, а не как плагины.

Чтобы изменить это, вы можете легко добавить пути загрузки Rails в конфигурации вашего приложения:

config.plugin_paths << "/usr/lib/ruby/site_ruby/1.8"

У меня нет опыта создания пакетов RPM, но если это заставляет вас создавать свое приложение таким хрупким способом, то действительно ли это лучший способ его распространения?Просто мысль!:)

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