【发布时间】:2019-01-28 21:02:17
【问题描述】:
我有一个简单的 Django 迁移,我在 Invoice 模型中添加了一个 UUIDField,如下所示。
模型字段:
uuid = models.UUIDField(
_('Unique invoice ID'),
default=uuid.uuid4,
editable=False,
)
生成的迁移:
migrations.AddField(
model_name='invoice',
name='uuid',
field=models.UUIDField(default=uuid.uuid4, editable=False,
verbose_name='Unique invoice ID'),
),
当我运行此迁移时,每张发票都会获得与其他发票相同的 UUID 值,几乎就像调用了一次 uuid.uuid4 函数然后该值被所有对象重用一样。
我使用 PostgreSQL 和 Django 1.11。
我在这里做错了什么?
【问题讨论】:
-
@WillemVanOnsem:哎呀!如果您将这些链接合二为一,我会接受您的回答。谢谢。
-
这已经在这里得到了广泛的讨论(和回答):stackoverflow.com/questions/35281003
标签: django postgresql django-migrations