1
Я использую Rails 2.2.2. Rails руководство сказал, способ расширить контроллер от плагина является:Рельсы. Как расширить класс контроллера из плагина без каких-либо изменений в файле контроллера?
Плагин:
module Plug
def self.included(base)
base.extend ClassMethods
base.send :include, InstanceMethods
base.helper JumpLinksHelper
end
module InstanceMethods
def new_controller_metod
...
end
end
module ClassMethods
end
end
приложение/контроллер/name_controller.rb
class NameController < ApplicationController
include Plug
...
конец
Вопрос: любой способ расширить контроллер от подключаемого модуля, без каких-либо изменений в контроллере r файл, если известен имя контроллера.
Rails инициализации плагинов в первом, то контроллер. Поэтому я могу запустить этот код только в конце environment.rb. Но такая же конструкция: class_eval (% {class NameControler \ n включает Plung \ n end;}) в конце environment.rb (неожиданно для меня) не дает результата. – potapuff
@neutrino ваш решает почти идеальный, но я не могу понять? где i shell запускает этот мир кода? если i shell запускает его в environment.rb, он будет использоваться ** только ** для выполнения первого контроллера. – potapuff
не может придумать ничего особенного прямо сейчас. кстати, для производства этого должно быть достаточно. –