在调用控制器方法之前,路由是重定向的

时间:2018-05-13 14:17:34

标签: php laravel-5.5

我正在使用Laravel 5.5.40以及Zizaco \ Entrust Pacakge

在我的routes/web.php文件中,我有以下路线设置。

Route::group(['prefix' => 'order'], function() {
    Route::get('', 'OrderController@getMe');
});

应该在getMe()内调用OrderController.php方法,但它会重定向到 www.mydomain.co.uk/home

namespace App\Http\Controllers;

class OrderController extends Controller
{    
    public function getMe() {
        return "You got me!";
    }
}

作为测试,我向__construct添加了OrderController.php函数,以查看该类是否已被加载。

public function __construct() {
    dd("Testing");
}

访问 www.mydomain.co.uk/order 时,我现在

"Testing"

我似乎无法解决为什么它没有运行getMe()方法。有人可能会对此有所启发吗?

我也尝试更改使用ClientController@list的路线,但效果很好。

ClientController.php

的内容
namespace App\Http\Controllers;

use App\Client;

class ClientController extends Controller
{

    public function __construct() {
        //
    }

    // Display all the clients
    public function list() {
        $tabContent = [
            'display_type' => 'list',
            'data' => Client::orderBy('name', 'asc')->get(),
            'view_params' => [
                'columns' => [
                    'name' => 'Client Name',
                    'address_line_1' => 'Address Line 1',
                    'town' => 'Town',
                    'county' => 'County',
                    'post_code' => 'Post Code'
                ],
                'links' => 'client',
                'controls' => True
            ]
        ];
        return view('tables.list', ['data' => $tabContent]);
    }
}

1 个答案:

答案 0 :(得分:0)

很明显,如果控制器中没有构造函数,它将自动重定向到URI的根,没有错误。

public function __construct() {
    //
}