我正在尝试访问当前控制器的名称和当前方法,以将其作为变量传递给我的视图。 我已经尝试了几种方法,我在网上发现但是它们没有用,所以我认为它们是用于Laravel 3。
这是我尝试过的
Request::$route->controller
给出
Access to undeclared static property: Illuminate\Support\Facades\Request::$route
和
Request::route()->controller
给出
Call to undefined method Illuminate\Http\Request::route()
答案 0 :(得分:10)
Route::currentRouteAction()
返回e..g" RecordAPIController @ show"
答案 1 :(得分:7)
尝试根据route docs命名您的路线,然后使用$name = Route::currentRouteName();
在什么情况下你不知道控制器/路由提前被解雇了什么?你能告诉我们你的用例吗?
答案 2 :(得分:2)
每个请求中的Router
实例具有以下可能有用的方法:
/**
* Retrieve the entire route collection.
*
* @return \Symfony\Component\Routing\RouteCollection
*/
public function getRoutes()
{
return $this->routes;
}
/**
* Get the current request being dispatched.
*
* @return \Symfony\Component\HttpFoundation\Request
*/
public function getRequest()
{
return $this->currentRequest;
}
/**
* Get the current route being executed.
*
* @return \Illuminate\Routing\Route
*/
public function getCurrentRoute()
{
return $this->currentRoute;
}
/**
* Get the controller inspector instance.
*
* @return \Illuminate\Routing\Controllers\Inspector
*/
public function getInspector()
{
return $this->inspector ?: new Controllers\Inspector;
}
答案 3 :(得分:1)
Laravel使用“Request”作为“Illuminate \ Support \ Facades \ Request”的别名(可以在app.php中找到)。 我的建议是避免使用“请求”作为模型/控制器/视图名称。
答案 4 :(得分:-3)
你可以使用基本的php常量/函数,而不是Laravel:
__LINE__, __FILE__, __FUNCTION__, __CLASS__, __METHOD__
将为您提供当前的行,文件,函数,类或方法
get_class()
为您提供当前的课程