Для этого я бы не рекомендовал проверку электронной почты пользователя по умолчанию, поставляемую с Laravel, которая составляет use Illuminate\Contracts\Auth\MustVerifyEmail;
Если вы хотите сделать так, чтобы пользователи были одобрены администраторами, я бы создал дополнительныйполе, которое не email_verified_at
.
Измените миграцию пользователя database/migrations/*********_create_users_table.php
и добавьте логическое поле.
...
class CreateUsersTable extends Migration
{
...
public function up()
{
Schema::create('users', function (Blueprint $table) {
...
$table->boolean('approved');
...
});
}
...
}
Затем вы можете создать новое промежуточное ПО, которое проверяет, утвержден ли пользователь.
Для запуска электронной почты я бы добавил событие, которое срабатывает при регистрации пользователя в массиве прослушивания app/Providers/EventServiceProvider.php
...
class EventServiceProvider extends ServiceProvider
{
/**
* The event listener mappings for the application.
*
* @var array
*/
protected $listen = [
Registered::class => [
SendEmailVerificationNotification::class,
/* add some notification here that sends you an email */
],
];
...
Извините, этот ответ не является подробным, но он будетпошли.