Tava seguindo a aula sobre criar a autenticação - este aqui - porém me deparei com um problema...
Eu consigo criar o usuário normalmente no meu banco de dados, e lá ele é gravado com email, senha e um nome.
A senha é hasheada normalmente, porém depois de ele se logar automaticamente na primeira vez, eu não consigo mais logar se eu fiz logout.
Model User.php
class User extends Authenticatable
{
use HasApiTokens, HasFactory, Notifiable;
/**
* The attributes that are mass assignable.
*
* @var array<int, string>
*/
protected $fillable = [
'adminNome',
'email',
'senha',
];
...
protected $table = 'admins';
protected $primaryKey = 'adminID';
}
LoginController.php
public function index()
{
return view('login.index');
}
public function registrar()
{
return view('login.registrar');
}
public function checarUsuario(Request $request)
{
if(!Auth::attempt($request->only(['email', 'senha']))){
return redirect()->back()->withErrors('Usuário ou senha inválidos.');
};
return to_route('raiz');
}
public function novoUsuario(Request $request)
{
$campos = $request->except(['_token']);
$campos['senha'] = Hash::make($campos['senha']);
$usuario = User::create($campos);
Auth::login($usuario);
return to_route('raiz');
}
public function logout()
{
Auth::logout();
return to_route('login');
}
LoginRotas.php
Route::get('/login',[LoginController::class,'index'])->name('login');
Route::get('/logout',[LoginController::class,'logout'])->name('logout');
Route::get('/registrar',[LoginController::class,'registrar'])->name('registrar');
Route::get('/recuperar-senha',[LoginController::class,'index'])->name('recuperar-senha');
Route::post('/login',[LoginController::class,'checarUsuario'])->name('checarUsuario');
Route::post('/registrar',[LoginController::class,'novoUsuario'])->name('novoUsuario');
Já dei uma pequena pesquisada na internet, e pode ser que minha senha tenha sido hasheada 2 vezes na hora da criação do usuário, por isso ela para de funcionar, porém, não encontrei uma solução.
O git do projeto é esse.