Olá renan, como está na explicação do curso, o 'related_name' criará automaticamente na classe Perfil
os atributos convites_feitos
e convites_recebidos
. Agora, a classe Convite
conhece seus perfis solicitante
e convidado
e a classe Perfil
conhece todos os convites feitos por ela e também recebidos. Isso permite fazer:
>>> perfil = Perfil.objetcs.get(id=1)
>>> perfil.convites_feitos # exibe todos os convites feitos pelo perfil
>>> perfil.convites_recebidos # exibte todos os convites recebidos pelo perfil
O modelo com a chave estrangeira ('foreign key') usa o nome do campo related_name
para procurar outro modelo. Se você não especificar o related_name
o Django vai criar um por padrão utilizando o nome do modelo em caixa baixa e acrescentar o sufixo _set
.
Você pode ler mais sobre o related_name
na documentação do django: https://docs.djangoproject.com/en/2.0/ref/models/fields/#django.db.models.ForeignKey.related_name
Espero ter ajudado e bons estudos!