2
respostas

Missing 1 required positional argument: on_delete

Galerinha, Quem for utilizar o Django na versão acima da 1.9, ou seja, na versão 2.0 em frente, irá se deparar com o erro 'Missing 1 required positional argument: on_delete' durante o mapeamento do modelo 'Convite'.

Vou explicar aqui rapidinho como corrigir isso.

Isso por que ao utilizar o models.ForeignKey é necessário passar além da entidade de relacionamento, o parametro on_delete (O qual define como será o tipo de Cascade ao deletar a entidade)

Mais informações em: https://docs.djangoproject.com/en/2.0/ref/models/fields/#django.db.models.ForeignKey.on_delete

Quem tiver sem saco para ler a documentação e entender, basta deixar a entidade modelo como no exemplo abaixo:

class Convite(models.Model):
    solicitante = models.ForeignKey(Perfil, on_delete=models.PROTECT, related_name='convites_feitos')
    convidado = models.ForeignKey(Perfil, on_delete=models.PROTECT, related_name='convites_recebidos')
2 respostas

Legal Diogo!

Bom que fica registrado pra quem tiver o problema no futuro.

Diogo, dei uma formatada no seu código para ficar mais fácil de entender sua dica! Obrigado pela participação! Abraços