bağlantısı aslında bir denetleyici geçersiz için bir örnek sağlamaz. Dosyayı "açık sınıflandırma" dan söz ediyorlar, ancak bunun nasıl yapılacağını açıklamıyorlar. Uygulamanızda motor sınıfını açarsanız, şu anda tanımlanma sürecinde olan bir sınıfa başvurduğunuz/açtığınız için bir döngüsel bağımlılık hatası alırsınız. Bu nedenle, önce motorun gerçek sınıfını yüklediğinizden emin olmanız gerekir. Benim durumumda
# in my app
# app/controllers/blazer/base_controller.rb
load Blazer::Engine.root.join('app/controllers/blazer/base_controller.rb')
Blazer::BaseController.class_eval do
filter_access_to :all
end
, ben Blazer gem kullanarak ve ona kimlik ekliyorum. Blazer'ın doğrudan desteklemediği bildirimsel yetkilendirmeyi kullandığımdan, Blazer'ın temel denetleyicisini açmam ve ona yetkilendirme şartımı eklemem gerekiyor.
http://stackoverflow.com/questions/5045068/extending-controllers-of-a-rails-3-engine-in-the-main-app adresine bir göz atın – Andrei