You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Documentation is not clear on the usage of cache sweeper. From the examples it appears that the ActiveRecord observers are active only if the sweeper is activated in the controller via cache_sweeper method. However, this is not true - they are just the ordinary AR observers, which in addition also receive callback from the controller. In controller callbacks, @controller variable is set to current controller, while method_missing is rerouted to the @controller. This is why the examples in documentation work - calls to the expire_page and expire_action are routed to the controller only if @controller is set. However, due to rails/rails@91cb99e, if the controller is not set, these methods now raise method_missing exception when sweeper is called outside controller scope.
In documentation it is also not documented how to use controller callbacks explicitly (sweeper should implement controller_callback_method_name or action_callback_method_name).
The text was updated successfully, but these errors were encountered:
Documentation is not clear on the usage of cache sweeper. From the examples it appears that the ActiveRecord observers are active only if the sweeper is activated in the controller via
cache_sweeper
method. However, this is not true - they are just the ordinary AR observers, which in addition also receive callback from the controller. In controller callbacks,@controller
variable is set to current controller, whilemethod_missing
is rerouted to the@controller
. This is why the examples in documentation work - calls to theexpire_page
andexpire_action
are routed to the controller only if@controller
is set. However, due to rails/rails@91cb99e, if the controller is not set, these methods now raise method_missing exception when sweeper is called outside controller scope.In documentation it is also not documented how to use controller callbacks explicitly (sweeper should implement
controller_callback_method_name
oraction_callback_method_name
).The text was updated successfully, but these errors were encountered: