Django在定义主键字段时查找id

时间:2016-10-17 11:14:21

标签: django database models

我使用Django版本1.10.1,我必须使用具有只读权限的外部数据库。 我用inspectdb命令生成了我的模型。一切正常,直到我将一个字段更改为外键,因为我必须包含inspectdb没有检测到的关系。 我在两个表中都定义了主键,但是当我定义外键django在参考中寻找id字段时,数据库中不存在。

我得到的错误: (1054, "Unknown column 'vicidial_callbacks.lead_id_id' in 'field list'")

这是我的模特:

class VicidialList(models.Model):
   _DATABASE = "dialer"
   lead_id = models.AutoField(primary_key=True)
   entry_date = models.DateTimeField(blank=True, null=True)
   modify_date = models.DateTimeField()
   status = models.CharField(max_length=50, blank=True, null=True)
   user = models.CharField(max_length=20, blank=True, null=True)
   vendor_lead_code = models.CharField(max_length=20, blank=True, null=True)
   source_id = models.CharField(max_length=50, blank=True, null=True)
   list_id = models.BigIntegerField()

   class Meta:
       managed = False
       db_table = 'vicidial_list'

class VicidialCallbacks(models.Model):
   _DATABASE = "dialer"
   callback_id = models.AutoField(primary_key=True)
   lead_id = models.ForeignKey(VicidialList, related_name='lead',to_field='lead_id')
   list_id = models.BigIntegerField(blank=True, null=True)
   campaign_id = models.CharField(max_length=8, blank=True, null=True)
   status = models.CharField(max_length=10, blank=True, null=True)

   class Meta:
       managed = False
       db_table = 'vicidial_callbacks'

那么为什么Django正在寻找id列?文档说Django想要添加自己的id字段,直到我们定义了primary_key ...

0 个答案:

没有答案
相关问题