Ruby on Rails 3 - каталог lib Перезагрузки для каждого запроса

Я создаю новый механизм для направляющие 3 приложения. Как можно предположить, этот механизм находится в каталоге lib моего приложения.

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

Существует ли способ избежать этого?

Я могу вынудить направляющие полностью перезагрузить каталог lib или определенный файл и его требования для каждого запроса?

Спасибо за Вашу справку :)

58
задан theIV 19 July 2010 в 16:07
поделиться

1 ответ

В RAILS 3 есть секретный соус для автоматической перезагрузки файлов библиотеки. Приведенный ниже код для примера немного избыточен, но это то, что я сделал, чтобы он заработал. Вы можете изменить сообщение в YoYo # gogo и видеть его на экране при каждой загрузке страницы. Удалите инициализатор, и он останется прежним.

/config/initializers/lib_reload.rb (новый файл)

ActiveSupport::Dependencies.explicitly_unloadable_constants << 'YoYo'
ActiveSupport::Dependencies.autoload_once_paths.delete(File.expand_path(File.dirname(__FILE__))+'/lib')

/lib/yo_yo.rb

class YoYo
  def gogo
    "OH HAI THERE"
  end
end

/ app / controllers / home_controller

require 'yo_yo'
class HomeController < ApplicationController
  def index
    @message = YoYo.new.gogo
  end
end
3
ответ дан 24 November 2019 в 18:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: