O perfil não seria um usuário ? Só faltaria adicionar um campo senha no model do Perfil.
Por que preciso ter essa separação de usuário e perfil?
O perfil não seria um usuário ? Só faltaria adicionar um campo senha no model do Perfil.
Por que preciso ter essa separação de usuário e perfil?
Ola Sony!
Para que você possa usufruir da infraestrutura de autenticação do Django você teria que usar a classe User no lugar de Perfil. Veja que isso não faria sentido, porque a classe User que já vem com o Django não possui todos os atributos que precisamos.
Foi por isso que criamos uma associação da classe Perfil com a classe User através do nome usuario. Com isso, podemos continuar com nossa classe Perfil e ainda pegar carona na infra do Django de autenticação de usuário.
Ficou mais claro agora? É uma forma de resolver o problema de autenticação.
Oi Sony! Aguardo seu Feedback para saber se esta tudo ok.
Entendi depois que vi a última aula ficou mais claro. Mas eu poderia fazer a classe Perfil herdar a classe User.. Dessa forma User seria a classe Pai e Perfil a classe Filho? Isso funcionaria? Ou a melhor forma eh fazer atribuição ou as duas formas dariam certo?
Em teoria deve funcionar, apesar deu usar composição ao invés de herança, que é o caso do nosso projeto. Usar composição como você fez evita que se um dia alguém adicionar métodos bizarros em User sua classe Perfil não será afetada, pois ela só usará o essencial para realizar a autenticação.
Por fim, sugiro você pesquisar o tema: composição x herança para engrandecer ainda mais o assunto.
Bom estudo Sony!
Entendi..realmente faz sentido o que você falou.. Vou da uma pesquisada sim nesse assunto.
Obrigado :)