Commit 21a51b7c by Taylor Otwell

Add controller and controller_action to route.

parent 641f1d4c
...@@ -154,13 +154,19 @@ abstract class Controller { ...@@ -154,13 +154,19 @@ abstract class Controller {
// improve speed since the bundle is not loaded on every request. // improve speed since the bundle is not loaded on every request.
Bundle::start($bundle); Bundle::start($bundle);
list($controller_name, $method) = explode('@', $destination); list($name, $method) = explode('@', $destination);
$controller = static::resolve($bundle, $controller_name); $controller = static::resolve($bundle, $name);
$controller->bundle = $bundle; // For convenience we will set the current controller and action on the
$controller->name = $controller_name; // Request's route instance so they can be easily accessed from the
$controller->action = $method; // application. This is sometimes useful for dynamic situations.
if ( ! is_null($route = Request::route()))
{
$route->controller = $name;
$route->controller_action = $method;
}
// If the controller could not be resolved, we're out of options and // If the controller could not be resolved, we're out of options and
// will return the 404 error response. If we found the controller, // will return the 404 error response. If we found the controller,
......
...@@ -31,6 +31,20 @@ class Route { ...@@ -31,6 +31,20 @@ class Route {
public $bundle; public $bundle;
/** /**
* The name of the controller used by the route.
*
* @var string
*/
public $controller;
/**
* The name of the controller action used by the route.
*
* @var string
*/
public $controller_action;
/**
* The action that is assigned to the route. * The action that is assigned to the route.
* *
* @var mixed * @var mixed
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment