如何从控制器中获取当前操作?

Chl*_*loe 7 ruby-on-rails ruby-on-rails-4

如何从控制器中获取当前操作?current_page?适用于视图,但不适用于控制器.

redirect_to step3_users_path unless current_page?(step3_users_path)
Run Code Online (Sandbox Code Playgroud)

我也试过了

controller.action_name == 'step3'
Run Code Online (Sandbox Code Playgroud)

我也试过了

params[:action_name] == 'step3'
Run Code Online (Sandbox Code Playgroud)

Vas*_*fed 11

控制器具有action_name方法/访问器(在AbstractController::Base当前轨道中定义,ActionController::Base对于较旧的)

  • http://guides.rubyonrails.org/action_controller_overview.html 明确指出使用 `action_name` 而不是 `params[:action]` (2认同)
  • 请注意,正确的用法不是“controller.action_name”,而是控制器代码中的“action_name”。 (2认同)