Я пытаюсь отправить подтверждение по электронной почте по API Laravel на основе этого видео . Но VerificationController основан на таблице пользователей с идентификатором, и я реализовал идентификатор UUID. Как я могу изменить следующий (VerificationController), чтобы исправить ошибку (от Почтальона) под кодом.
public function __construct()
{
$this->middleware('auth:api')->only('resend');
$this->middleware('signed')->only('verify');
$this->middleware('throttle:6,1')->only('verify', 'resend');
}
/**
* Resend the email verification notification.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function resend(Request $request)
{
if ($request->user()->hasVerifiedEmail()) {
return response(['message'=>'Already verified']);
}
$request->user()->sendEmailVerificationNotification();
if ($request->wantsJson()) {
return response(['message' => 'Email Sent']);
}
return back()->with('resent', true);
}
/**
* Mark the authenticated user's email address as verified.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
* @throws \Illuminate\Auth\Access\AuthorizationException
*/
public function verify(Request $request)
{
auth()->loginUsingId($request->route('id'));
if ($request->route('id') != $request->user()->getKey()) {
throw new AuthorizationException;
}
if ($request->user()->hasVerifiedEmail()) {
return response(['message'=>'Already verified']);
// return redirect($this->redirectPath());
}
if ($request->user()->markEmailAsVerified()) {
event(new Verified($request->user()));
}
return response(['message'=>'Successfully verified']);
}
Ошибка при доступе к моему маршруту / api / email / resend с access_token после регистрации.
"message": "SQLSTATE[42S22]: Column not found: 1054 Unknown column 'id' in 'where clause' (SQL: select * from `users` where `id` is null limit 1)",
"exception": "Illuminate\\Database\\QueryException",
"file": "/mnt/e/mg-central-server/api/vendor/laravel/framework/src/Illuminate/Database/Connection.php",
"line": 669,
Спасибо.