Проблема несовместимости при обновлении django с 2.4 до 3.0
Я поддерживаю систему и часто обновляю ее, потому что она часто используется с django 1.8, в настоящее время проект находится на django 2.4, и я хотел бы перейти на 3.0, однако у меня возникла проблема совместимости моделей.
"Модели" находятся в упрощенных версиях, и это нормально работает в предыдущих версиях. "Модели" такие, потому что я мигрировал гигантскую систему, поэтому я сделал базу данных как можно ближе к старой, чтобы сэкономить работу.
class Pessoa(models.Model):
idPessoa=models.IntegerField(primary_key=True,blank=True)
name=models.CharField(max_length=100,verbose_name="nome")
address=models.TextField('endereço',
blank=True,
null=True)
class Bancos(Pessoa):
@property
def idBanco(self):
return self.idPessoa
@idBanco.setter
def idBancoSetter(self,valor):
self.idPessoa = valor
codigo_febraban=models.CharField(max_length=5,null=True,blank=True)
def __str__(self):
return self.name
class ContasBancariasPessoas(models.Model):
idContaBancaria = models.IntegerField(null=True,blank=True)
idPessoa = models.ForeignKey(Pessoas,limit_choices_to={'visivel':True},on_delete=models.CASCADE,to_field='idPessoa',verbose_name='titular')
idBanco = models.ForeignKey(Bancos,on_delete=models.CASCADE,to_field='idPessoa',verbose_name="banco",
related_name='bancos',null=True)
Agencia = models.CharField(max_length=10,null=False,default='0000',
verbose_name="agência")
Numero = models.CharField(max_length=20,null=False,default='0000',
verbose_name='número da conta')
Titular = models.CharField(max_length=50,null=True,blank=True,
verbose_name='titular',help_text="nome que é exibido na conta")
Ошибка заключается в следующем: django.core.exceptions.FieldError: 'institucional.ContasBancariasPessoas.idBanco' refers to field 'idPessoa' which is not local to model 'institucional.Bancos'