estou com um pequeno problema. class Pessoa(models.Model): cpf = BRCPFField(**unique=true**) class Aluno(Pessoa): novo_atributo = .... class Instrutor(Aluno): outro_atributo = ... class Gestor(Pessoa): class Meta: proxy = True Uma pessoa pode ser um aluno, um gestor e um aluno pode se tornar um instrutor, futuramente. Quando eu cadastro um aluno com um CPF X, 100%. Mas quando eu tento registrar esse mesmo aluno(pessoa) com o CPF X como gestor, acusa erro pois o CPF está como unique. Como posso resolver isso? Já tentei deixar a classe Pessoa como abstrata, porém o eu quero é deixar a tabela pessoa única, para evitar duplicidade. Pois uma mesma pessoa pode ser gestor, aluno e instrutor. Pensei na herança, pois ajuda bastante em relação ao banco. Forms: class PessoaForm(forms.ModelForm): class Meta: model = Pessoa fields = '__all__' class GestorForm(PessoaForm): class Meta: model = Gestor fields = '__all__' class AlunoForm(PessoaForm): class Meta: model = Aluno fields = '__all__' Views: class AlunoCreate(LoginRequiredMixin, CreateView): model = Aluno form_class = AlunoForm login_url = reverse_lazy('usuarios:login') class GestorCreate(LoginRequiredMixin, CreateView): model = Gestor login_url = reverse_lazy('usuarios:login') form_class = GestorForm Template Aluno_form: <form class="row gx-3 gy-2 align-items-center needs-validation" method="post" action="" role="form" enctype="multipart/form-data"> {% csrf_token %} {{ form.media }} <div class="row g-3"> <div class="col-md-3"> <div class="form-floating"> {{ form.cpf }} <label for="id_cpf">CPF</label> </div> </div> <div class="col-md-6"> <div class="form-floating"> {{ form.nome }} <label for="id_nome">Nome</label> </div> </div> </div> <div class="col-auto"> <button type="submit" class="btn btn-primary mb-2">Enviar</button> </div> </form> Template Gestor_form: <form class="row gx-3 gy-2 align-items-center needs-validation" method="post" action="" role="form" enctype="multipart/form-data"> {% csrf_token %} {{ form.media }} <div class="row g-3"> <div class="col-md-3"> <div class="form-floating"> {{ form.cpf }} <label for="id_cpf">CPF</label> </div> </div> <div class="col-md-6"> <div class="form-floating"> {{ form.nome }} <label for="id_nome">Nome</label> </div> </div> <div class="col-md-6"> <div class="form-floating"> {{ form.funcao }} <label for="id_nome">Função</label> </div> </div> </div> <div class="col-auto"> <button type="submit" class="btn btn-primary mb-2">Enviar</button> </div> </form> Continue reading...