Redmine Plugin - требует перезагрузки после каждого изменения кода - PullRequest
4 голосов
/ 15 февраля 2012

Я работаю над некоторым плагином для Redmine (веб-приложение для управления проектами, написанное с использованием Ruby on Rail).

Для каждого изменения, которое я делаю в коде плагина (скажем, в файле view.html.erb),Я должен перезагрузить сервер Redmine (приложение).Это потому, что по умолчанию он работает в производственном режиме.

Будет ли запуск приложения в режиме разработки решить эту проблему?

Если да, как я могу изменить его режим работы или переопределить это поведение, чтобы классы загружались при каждом запросе (даэто не будет эффективно, но будет полезно для разработки), и изменения в коде отражаются без перезапуска сервера приложений (в данном случае redmine)

Я попытался добавить эту строку в файл environment.rb

ENV['RAILS_ENV'] ||= 'development'

Также попробовал ответы / комментарии, опубликованные ниже, но они не решили мою проблему.

Любое рабочее решение было бы очень полезно.

Спасибо.

Прочая информация, связанная с данной:

Он использует Rails 2.3.14 и устанавливается с использованием стека bitnami

1 Ответ

3 голосов
/ 15 февраля 2012

Для автоматической перезагрузки плагина на Rails 2.3:

Добавить config.reload_plugins = true в config / environment.rb. Он должен быть там, вы не можете поставить его на config/environments/development.rb из-за шагов запуска Rails. Вместо этого вы можете добавить if RAILS_ENV = 'development'.

config / environment.rb

config.reload_plugins = true  

В файле init.rb плагина добавьте следующую строку: init.rb

ActiveSupport::Dependencies.explicitly_unloadable_constants = 'YourPluginModuleName' 

Вот и все. Не забудьте удалить его, когда закончите.

...