Troca de tabela user default laravel
Ola carlos boa noite,
Eu estou desenvolvendo uma aplicação laravel com um banco de dados existente, e com esse banco de dados tem uma aplicacao rodando e com isso tem varios usuarios utilizando, porem o padrao de autenticação que a aplicação que esta rodando hj e bem diferente do padrao do laravel.
Eu gostaria de saber se no laravel eu consigo alterar a tabela padrao do user, e com isso alterar os parametros de autenticação
por exemplo:
o laravel cria a tabela User porem eu preciso transferir para pessoa_usuario
e os campos padrao do laravel eh o e-mail e o password e na minha outra tabela esta como usuario e a senha esta como senha mesmo.
eh possivel alterar esses dados utilizando o processo de auth do laravel....
eu estou utilizando o laravel 8 com vuejs.
att. jean max
Olá, Jean!
Tudo bem?
É possível sim amigo, o Laravel te permite customizar o que precisar.
Primeiro ponto no seu caso, cria um novo model (você até pode usar o model User, mas ficaria incoerente).
Segundo, copia o conteúdo do model User para o novo model que criou (deixando apenas o nome da classe correta, com o mesmo nome do arquivo)
Terceiro, no arquivo de configuração de autenticação (config/auth.php) indique o model novo como autenticação default:
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\Models\SeuNovoModelAqui::class,
],
// [...]
];
Neste model, não esqueça de ligar ele a sua tabela, usando o atributo:
protected $table = 'nome_tabela';
Quarto, se precisar trocar apenas o email como autenticação, basta criar um método no model chamado username, exemplo:
public function username()
{
return 'usuario';
}
E para trocar o password, crie o accessor getAuthPassword no model, exemplo:
public function getAuthPassword()
{
return $this->senha;
}
Precisa estar logado para conseguir responder a este ticket!
Clique Aqui Para Entrar!