如何在Laravel中使用多身份验证电子邮件?

如何在Laravel中使用多身份验证电子邮件?,laravel,email-verification,Laravel,Email Verification,我建立了一个多身份验证的Laravel系统,有两个守卫:“用户”和“客户”。 现在我想验证新注册客户(但不是用户)的邮件 我补充说 use Illuminate\Contracts\Auth\MustVerifyEmail; Route::get('email/resend', 'CustomerAuth\VerificationController@resend')->name('verification.resend'); Route::get('email/verify', 'Cu

我建立了一个多身份验证的Laravel系统,有两个守卫:“用户”和“客户”。 现在我想验证新注册客户(但不是用户)的邮件

我补充说

use Illuminate\Contracts\Auth\MustVerifyEmail;
Route::get('email/resend', 'CustomerAuth\VerificationController@resend')->name('verification.resend');
Route::get('email/verify', 'CustomerAuth\VerificationController@show')->name('verification.notice');
Route::get('email/verify/{id}', 'CustomerAuth\VerificationController@verify')->name('verification.verify');

自定义模型

我补充说

use Illuminate\Contracts\Auth\MustVerifyEmail;
Route::get('email/resend', 'CustomerAuth\VerificationController@resend')->name('verification.resend');
Route::get('email/verify', 'CustomerAuth\VerificationController@show')->name('verification.notice');
Route::get('email/verify/{id}', 'CustomerAuth\VerificationController@verify')->name('verification.verify');
到路线

我已经在views/auth中构建了“verify.blade”

我已创建CustomerAuth\VerificationController

现在,Laravel会向新客户发送验证电子邮件,但不会验证,也不会显示任何消息。如果客户单击验证链接,Laravel会将客户发回主页

这里是app/Http/Controllers/CustomerAuth/VerificationController.php

namespace App\Http\Controllers\CustomerAuth;
use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\VerifiesEmails;
class VerificationController extends Controller
{    
use VerifiesEmails;

protected $redirectTo = '/home';

public function __construct()
{
    $this->middleware('auth');
    $this->middleware('signed')->only('verify');
    $this->middleware('throttle:6,1')->only('verify', 'resend');
}
}
我也试过了
$this->中间件('auth:customer')

auth.php

return [
'defaults' => [
'guard' => 'user',
'passwords' => 'users',
],
'guards' => [
'user' => [
'driver' => 'session',
'provider' => 'users',
],
'customer' => [
'driver' => 'session',
'provider' => 'customers',
],
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'token',
'provider' => 'users',
'hash' => false,
],
],
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\User::class,
],
'customers' => [
'driver' => 'eloquent',
'model' => App\Customer::class,
],
],
'passwords' => [
'customers' => [
'provider' => 'customers',
'table' => 'customer_password_resets',
'expire' => 60,
],
'users' => [
'provider' => 'users',
'table' => 'user_password_resets',
'expire' => 60,
],  
],
];

我明白了,我认为它可以与
$this->中间件('auth:customer')一起工作,你是怎么设置警卫的?谢谢。这是auth.phpI现在提出的问题,因此您可以很好地阅读它。