保存后,Django对象的ID不可用

时间:2011-03-10 17:13:57

标签: django django-models

我有以下Bank型号:

from django.db import models

class Bank(models.Model):
    id = models.BigIntegerField(primary_key=True)
    name = models.CharField(unique=True, max_length=255)
    identifier = models.CharField(unique=True, max_length=255)
    created_at = models.DateTimeField()
    updated_at = models.DateTimeField()
    class Meta:
        db_table = u'bank'
        app_name = 'mcif'

现在看看:

>>> from mcif.models import *
>>> b = Bank()
>>> b.name = "wee"
>>> b.identifier = "wee"
>>> b.save()
>>> b.id
>>>

如果我理解Django是如何工作的,那么Bank对象应该使用已保存记录的id进行更新。知道为什么没有发生这种情况吗?

1 个答案:

答案 0 :(得分:0)

在处理BigInt作为Autoincrementing PK时,它在Django中存在问题。也许这段代码片段可以帮助您解决此问题。它是一个临时的solution