Laravel kendi içerisinde auth özelliği ile birlikte geliyor, controllerlar var fakat
php artisan make:auth yapmadan gerekli şablonlar (view) oluşturulmuyor.
Siz sadece routes/web.php içerisine rotaları ekliyorsunuz:
routes/web.php
Auth::routes();
// ya da Route::auth();
Bunu yaptığınızda rotalar tanımlanıyor.
php artisan route:list yaptığınızda şunları görmeniz gerekiyor:
| | POST | login | | App\Http\Controllers\Auth\LoginController@login | web,guest |
| | GET|HEAD | login | login | App\Http\Controllers\Auth\LoginController@showLoginForm | web,guest |
| | POST | logout | logout | App\Http\Controllers\Auth\LoginController@logout | web |
| | POST | password/email | password.email | App\Http\Controllers\Auth\ForgotPasswordController@sendResetLinkEmail | web,guest |
| | GET|HEAD | password/reset | password.request | App\Http\Controllers\Auth\ForgotPasswordController@showLinkRequestForm | web,guest |
| | POST | password/reset | password.update | App\Http\Controllers\Auth\ResetPasswordController@reset | web,guest |
| | GET|HEAD | password/reset/{token} | password.reset | App\Http\Controllers\Auth\ResetPasswordController@showResetForm | web,guest |
+--------+-----------+----------------------------------------------+-------------------------------+------------------------------------------------------------------------+------------------------------------------------------+
Hepsi bu. Geriye sadece şablonları oluşturmak kalıyor.
Eğer siz farklı bir şeyler yaptıysanız bir şeyi atlamış olabilirsiniz. Siz şifre sıfırlama kısmını nasıl yaptığınızı anlatın.
Yeni şifre formu da en basit haliyle şöyle olmalı:
<form method="POST" action="{{ route('password.update') }}">
@csrf
<input type="hidden" name="token" value="{{ $token }}">
<input name="email">
<input name="password" type="password">
<input name="password_confirmation" type="password">
<button type="submit">Değiştir</button>
</form>