Как продлить верификацию Laravel - PullRequest
0 голосов
/ 13 марта 2020

Я работаю над приложением Laravel, которое использует Laravel Проверка.

Я установил Laravel Проверка.

public function up()
{
    Schema::create('users', function (Blueprint $table) {
        $table->bigIncrements('id');
        $table->string('name');
        $table->string('email')->unique();
        $table->string('role')->default('family');
        $table->timestamp('email_verified_at')->nullable();
        $table->date('trialExpires')->nullable();
        $table->string('avatar')->nullable();
        $table->timestamp('sub_paid_at')->nullable();
        $table->string('session_id')->nullable();
        $table->string('password')->nullable();
        $table->rememberToken();
        $table->timestamps();

    });
}

Я пытаюсь обновить столбец trialExpires, когда пользователь проверяет свою электронную почту.

Я бы сделал это

$user = User::find(Auth::id());
// get the current time
$current = Carbon::now();
// add 30 days to the current time
$user->trialExpires = $current->addDays(30);
$user->save();

Не могу знать, как реализовать эту функцию, когда пользователь проверяет свою электронную почту.

1 Ответ

1 голос
/ 13 марта 2020

вы можете прослушать событие

/**
 * The event listener mappings for the application.
 *
 * @var array
 */
protected $listen = [
    'Illuminate\Auth\Events\Verified' => [
        'App\Listeners\LogVerifiedUser',
    ],
]

Как только оно будет проверено (проверьте документы о том, как добавить процесс проверки в модель et c.), Вы Можно добавить значение срока действия в ваш столбец.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...