method_for_action(action_name) private

Takes an action name and returns the name of the method that will handle the action. In normal cases, this method returns the same name as it receives. By default, if #method_for_action receives a name that is not an action, it will look for an #action_missing method and return “_handle_action_missing” if one is found.

Subclasses may override this method to add additional conditions that should be considered an action. For instance, an HTTP controller with a template matching the action name is considered to exist.

If you override this method to handle additional cases, you may also provide a method (like _handle_method_missing) to handle the case.

If none of these conditions are true, and method_for_action returns nil, an AbstractController::ActionNotFound exception will be raised.


  • action_name - An action name to find a method name for


  • string - The name of the method that handles the action

  • nil - No method name could be found.

Show source
Register or log in to add new notes.