Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django未分配任何主键_Python_Django - Fatal编程技术网

Python Django未分配任何主键

Python Django未分配任何主键,python,django,Python,Django,保存我的表时,Django似乎没有分配任何主键?我错过了什么 class Campaign(models.Model): campaignid = models.CharField(max_length=255, primary_key=True, db_column='campaignID') name = models.CharField(max_length=105) active = HibernateBooleanField(default=False)

保存我的表时,Django似乎没有分配任何主键?我错过了什么

class Campaign(models.Model):
    campaignid = models.CharField(max_length=255, primary_key=True, db_column='campaignID')
    name = models.CharField(max_length=105)
    active = HibernateBooleanField(default=False)
    created = models.DateTimeField()
    modified = models.DateTimeField(null=True, blank=True)
    companyid = models.ForeignKey(Company, null=True, db_column='companyID', blank=True)

    class Meta:
        db_table = u'campaign'


    def __unicode__(self):
        return self.name  

好的,因为我的模型是使用guid从现有表生成的,所以我必须将其保留为CharField,并添加以下内容:

def save(self, *args, **kwargs):
        if not self.campaignid:
            self.campaignid = hashlib.sha1(str(random.random())).hexdigest()
        super(Campaign, self).save(*args, **kwargs)

否。擦除表、重新同步并转储架构。您真的可以将charfield作为主键吗?我的表已经使用Hibernate进行了预填充。我无法删除该表,因为它们包含来自其他应用程序的数据。好的,但即使它是有效的,Django如何知道如何填充它?此问题包含更多信息: