Module: ActiveAdmin::Extensions::Controller::RedirectAfterActionTo::ClassMethods
- Defined in:
- lib/active_admin/extensions/controller/redirect_after_action_to.rb
Instance Method Summary collapse
- #redirect_after_action ⇒ Object
- #redirect_after_action_to(actions:, path:, keep_flash: true) ⇒ Object
- #redirect_after_action_to_member_url(actions:, url_helper:, keep_flash: true) ⇒ Object
Instance Method Details
#redirect_after_action ⇒ Object
46 47 48 |
# File 'lib/active_admin/extensions/controller/redirect_after_action_to.rb', line 46 def redirect_after_action @redirect_after_action ||= {} end |
#redirect_after_action_to(actions:, path:, keep_flash: true) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
# File 'lib/active_admin/extensions/controller/redirect_after_action_to.rb', line 50 def redirect_after_action_to(actions:, path:, keep_flash: true) unless actions.respond_to? :each actions = [actions] end actions.each do |action| parsed_action = if action.try(:lambda?) action.call.to_sym else action.to_sym end redirect_after_action[parsed_action] = { path: path, keep_flash: keep_flash } end end |
#redirect_after_action_to_member_url(actions:, url_helper:, keep_flash: true) ⇒ Object
69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/active_admin/extensions/controller/redirect_after_action_to.rb', line 69 def redirect_after_action_to_member_url( actions:, url_helper:, keep_flash: true ) redirect_after_action_to( actions: actions, path: ->(controller) { controller.send(url_helper, controller.send(:resource)) }, keep_flash: keep_flash ) end |