The order of filters will be determined by the order that the controller files are loaded, and this is currently plugins first, then application. So filters defined in the application will be invoked after those defined in plugins, by default.
To get around this, I believe you can call append_before_filter/prepend_before_filter to explicitly control where your filters are inserted into the filter chain. HTH, James On Thu, Aug 28, 2008 at 1:08 PM, Antonio Tapiador del Dujo <[EMAIL PROTECTED]> wrote: > Hi! > I'm moving my CMSplugin to Rails Engines, as it's a very nice framework for > certain features. Thank you! > > However, I've a problem with filters in Controllers. > > In my plugin I have the following code: > > class PostsController < ActionController::Base > before_filter :get_post, :only => [..] > > [..] > end > > and in an application: > > class PostsController < ActionController::Base > before_filter :get_post, :except => [...] > before_filter :post_has_media, :only => [...] > > [...] > end > > > The problem is that :get_post should be passed before :post_has_media, and > that doesn't work. > > If I delete the "before_filter :get_post" statement from the plugin, things > work > > What is the behaviour of filters in Controllers? Is the filter deleted when > redefined in the application or there are changes in the order? > > Thank you again. > _______________________________________________ > Engine-Users mailing list > [email protected] > http://lists.rails-engines.org/listinfo.cgi/engine-users-rails-engines.org > -- * J * ~ _______________________________________________ Engine-Users mailing list [email protected] http://lists.rails-engines.org/listinfo.cgi/engine-users-rails-engines.org
