如何在Laravel Voyager中创建自定义控制器

时间:2018-02-12 10:04:00

标签: php laravel laravel-5.3 voyager

我是旅行者的新手。

安装Voyager时我在TCG\\Voyager\\Http\\Controllers内有所有控制器,但没有找到我用BREAD创建的其他控制器。

除此之外,我想在App\\Http\\Controllers\\Voyager内的Voyager管理面板中创建自定义控制器。我还按照Youtube中的Voyager教程的步骤制作自定义控制器,但无法创建。

请帮身吗?

3 个答案:

答案 0 :(得分:7)

在config \ voyager.php文件中添加命名空间:

'controllers' => [
    'namespace' => 'App\Http\Controllers\Back',
],

然后将voyageres控制器发布到您的命名空间

php artisan voyager:controllers

在该命名空间内创建一个从VoyagerBreadController派生的新控制器

namespace App\Http\Controllers\Back;

use Illuminate\Http\Request;

class SchoolController extends VoyagerBreadController
{

然后您可以在面包编辑器中指定控制器。

注意:我确实必须将我的内容称为Back \ SchoolController,而不是像我预期的那样将其称为SchoolController。

Setting controller on backend

答案 1 :(得分:1)

更新: 从现在的1.1版开始,您需要扩展VoyagerBaseController而不是VoyagerBreadController

答案 2 :(得分:0)

将此添加到模型中。

use Illuminate\Database\Eloquent\Builder;

protected static function boot()
    {
        parent::boot();
        static::addGlobalScope('order', function (Builder $builder) {
            $builder->orderBy('name', 'asc');
        });
}