【问题标题】:Laravel 5.2 use Illuminate\Http\Request Not working in subfolder ControllerLaravel 5.2 使用 Illuminate\Http\Request 在子文件夹控制器中不起作用
【发布时间】:2016-04-27 23:40:49
【问题描述】:

我在 App\Http\Controllers 文件夹中使用索引方法创建了一个 AdminController,并且请求它工作正常,我在 URL 栏中输入 http://localhost/brosta/public/index,然后我将路径“索引”带到我的浏览器,没关系!

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;

class AdminController extends Controller
{

    public function index(Request $request)
    {
        $path = $request->path();
        print_r($path);
        return view('index');
    }

但是当我在 App\Http\Controllers\Admin 等子文件夹中创建控制器 AdminController 时,请求的路径不起作用。怎样才能让它发挥作用?

namespace App\Http\Controllers\Admin;

use Illuminate\Http\Request;

use App\Http\Requests;

class AdminController extends Controller
{

    public function index(Request $request)
    {
        $path = $request->path();
        print_r($path);
        return view('index');
    }
}

好的!现在我对请求有不同的问题!这种方式是有效的

namespace App\Http\Controllers\Admin;

use Illuminate\Http\Request;

use App\Http\Requests;

use App\Http\Controllers\Controller;

class AdminController extends Controller
{

    public function index(Request $request)
    {
        print_r($request->path());
    }

}

但是这种方式是行不通的!

namespace App\Http\Controllers\Admin;

use Illuminate\Http\Request;

use App\Http\Requests;

use App\Http\Controllers\Controller;

class AdminController extends Controller
{

    public function index()
    {
        $request = new Request;
        print_r($request->path());
    }

}

【问题讨论】:

    标签: laravel request


    【解决方案1】:

    尝试在您的第二个控制器中添加此行。

    use App\Http\Controllers\Controller;

    由于您位于不同的命名空间中,因此您需要为 Controller 类添加正确的命名空间。

    【讨论】:

    • 如果您对这个问题有所了解,请再次查看我的新问题
    • 尝试像这样从服务容器中解决它:$request= $this->app->make('Request');
    猜你喜欢
    • 2020-06-20
    • 1970-01-01
    • 2013-01-08
    • 2013-06-19
    • 2017-03-14
    • 2012-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多