我对我的应用的两个models
使用以下定义:
class AreaMap(models.Model):
Code = models.AutoField(primary_key=True)
fCityCode = models.CharField(
verbose_name='City', max_length=100)
fCountyCode = models.CharField(
verbose_name='County', max_length=100)
fCountryCode = models.CharField(
verbose_name='Country', max_length=100, default='RO')
CityPicture = models.ImageField(upload_to='cities')
def __str__(self):
return self.fCityCode
class Book(models.Model):
Code = models.AutoField(primary_key=True, editable=False)
fUser = models.ForeignKey(
User, on_delete=models.PROTECT, verbose_name='Belongs to')
MainDescription = models.CharField(
verbose_name='Description/title', max_length=100)
fCityCode = models.OneToOneField(
AreaMap, on_delete=models.PROTECT, verbose_name='City')
fCountyCode = models.OneToOneField(
AreaMap, on_delete=models.PROTECT, related_name='fcountycode')
def __str__(self):
return self.MainDescription
根据我的模型定义(这是错误的),第二个模型的两个字段都继承了与属于第一个模型的fCityCode
相同的值。我想要的是在我的第二个模型中,对于字段fCityCode
和fCountyCode
仅能够选择第一个模型中所保存的值,它们在同一列-fCityCode
中和fCountyCode
。
如何实现这样的目标?谢谢