【问题标题】:Django object's id isn't available after save保存后 Django 对象的 id 不可用
【发布时间】:2011-07-12 21:41:21
【问题描述】:

我有以下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 进行更新。知道为什么这没有发生吗?

【问题讨论】:

    标签: django django-models


    【解决方案1】:

    在处理 BigInt 作为自动增量 PK 时,这是 Django 中的一个问题。也许这段代码 sn-p 可以帮助您解决这个问题。这是一个临时的solution

    【讨论】:

    • 愚蠢的问题:我应该把那个文件放在哪里?在我把它放在那里之后,我还有什么需要做的吗?
    猜你喜欢
    • 2013-12-16
    • 2020-08-31
    • 2021-11-15
    • 1970-01-01
    • 2015-08-08
    • 1970-01-01
    • 2011-01-12
    • 1970-01-01
    • 2014-10-23
    相关资源
    最近更新 更多