Методы ApplicationController в Rails 2.0.2 не переопределяют методы плагина, использующие движки - PullRequest
0 голосов
/ 21 сентября 2010

Я пытаюсь использовать плагин Savage Beast 2 в своем проекте.Этот плагин требует использования плагина Engines.Мой проект на Rails 2.0.2.

В

/main_app/vendor/plugins/savage_beast/lib/authentication_system.rb 

есть несколько методов, которые я хочу переопределить в

/main_app/app/controllers/application.rb

Представления внутри плагинадаже если переопределено путем создания похожих представлений в основном приложении), НЕ просматривайте переопределенные методы в application.rb и вместо этого обращайтесь к методам в

/main_app/vendor/plugins/savage_beast/lib/authentication_system.rb

Начало моего application.rb выглядит так:*

class ApplicationController < ActionController::Base
  helper :all # include all helpers, all the time
  include SavageBeast::AuthenticationSystem

Я также добавил правильную строку в мой /config/environment.rb -

require File.join(File.dirname(__FILE__), '../vendor/plugins/engines/boot')

после строки загрузки require ...

Я неуверен, что делать на этом этапе.Любая помощь будет оценена.

1 Ответ

0 голосов
/ 21 сентября 2010

Очевидно, это работает, если вместо этого я переопределил эти методы в ApplicationHelper !!!Зачем?Я не знаю!Поэтому вместо переопределения этих методов в application.rb я сделал это в application_helper.rb

И теперь он работает нормально!Мне пришлось включить свой собственный модуль аутентификации в application_helper.rb для поддержки методов, которые я переопределял.

...