laracomponents / impersonation
为Laravel应用程序模拟用户。
v1.0.1
2017-01-27 06:21 UTC
Requires
- php: >=5.6.4
- illuminate/support: ~5.3.0|~5.4.0
Requires (Dev)
- mockery/mockery: ^0.9.7
- orchestra/testbench: ^3.3
- phpunit/phpunit: ^5.7
This package is not auto-updated.
Last update: 2024-09-14 19:53:21 UTC
README
简介
为Laravel应用程序模拟用户。
安装
您可以通过以下命令使用composer安装此包:
composer require laracomponents/impersonation
接下来,您必须将Impersonable特质添加到用户模型中
use LaraComponents\Impersonation\Traits\Impersonable; class User { use Impersonable; ... /** * Optional method * Default return the "impersonate_id" **/ public function getImpersonatingKey() { return 'your session key here'; } }
打开App/Http/Kernal.php并添加中间件到web中间件组
protected $middlewareGroups = [ 'web' => [ ... \LaraComponents\Impersonation\Middleware\CheckForImpersonating::class, ], ... ];
最后,您应该在routes/web.php中添加路由。例如:
Route::get('users/{id}/impersonate', function ($id) { $user = \App\User::findOrFail($id); if(! $user->isImpersonating()) { $user->impersonate(); } return redirect('/'); }); Route::get('users/unimpersonate', function () { $user = \Auth::user(); if($user->isImpersonating()) { $user->unimpersonate(); } return redirect('/'); });
测试
您可以使用以下命令运行测试:
vendor/bin/phpunit
许可证
MIT许可证(MIT)。请参阅许可证文件获取更多信息。