在Laravel中扩展供应商控制器Singleton(LaravelUsers)

时间:2018-11-20 03:19:09

标签: php laravel controller

我只是想在laravelusers包中添加一个字段,以允许我向用户添加公司。我已经完成了将字段添加到模型中的可填充数组中的常规步骤,并且修改了供应商发布的视图文件以适当地包含新字段。我已经仔细检查过该字段是通过控制台传递到标题中的。

不幸的是,此供应商软件包的基本控制器是按字段名称专门创建的,而“ company”不是其中之一-所以我认为我只需要重新创建控制器并扩展供应商控制器即可覆盖存储方法。

又是:

use jeremykenedy\LaravelUsers\Controllers\UsersManagementController as BaseUsersManagementController;

class UsersManagementController extends BaseUsersManagementController

然后替换此功能:

public function store(Request $request)

但是,该控制器似乎是通过服务提供商注册的,该服务提供商使用以下代码实例化了该控制器:

$this->app->make('jeremykenedy\laravelusers\App\Http\Controllers\UsersManagementController');
$this->app->singleton(jeremykenedy\laravelusers\App\Http\Controllers\UsersManagementController\UsersManagementController::class, function () {
        return new App\Http\Controllers\UsersManagementController();
    });
$this->app->alias(UsersManagementController::class, 'laravelusers');

我如何才能挂接到该注册调用并将其扩展为在基本控制器的方法之上查看我的新控制器的方法,以允许通过我自己的控制器处理新字段?

感谢您的帮助。

0 个答案:

没有答案