作者:so-sweet天地 | 来源:互联网 | 2022-12-02 17:09
要将非空列添加到现有表中,Django需要使用ALTER TABLE ADD COLUMN ... DEFAULT
。这仅允许Django调用一次默认函数,这就是为什么您看到每一行都具有相同值的原因。
除了可以使用数据迁移用唯一值填充现有行之外,您的解决方法很重要,因此不需要任何手动步骤。此用例的整个过程在docs中进行了描述:https : //docs.djangoproject.com/en/2.1/howto/writing-migrations/#migrations-that-add-unique-fields
1> knbk..:
要将非空列添加到现有表中,Django需要使用ALTER TABLE ADD COLUMN ... DEFAULT
。这仅允许Django调用一次默认函数,这就是为什么您看到每一行都具有相同值的原因。
除了可以使用数据迁移用唯一值填充现有行之外,您的解决方法很重要,因此不需要任何手动步骤。此用例的整个过程在docs中进行了描述:https : //docs.djangoproject.com/en/2.1/howto/writing-migrations/#migrations-that-add-unique-fields
这确实是正确的答案。以票证的形式提供更多参考:https://code.djangoproject.com/ticket/23408