0

我有一个 CustomUser 模型,我想为每个插入生成一个唯一的 shortuuid。不确定我是否以正确的方式执行此操作,因为我遇到了具有连续插入的非唯一 uuid。还是我应该重写 create 方法并从那里生成 shortuuid?

from django_extensions.db.fields import ShortUUIDField
import shortuuid

class CustomUser(AbstractUser):
    uuid = ShortUUIDField(unique=True, blank=False, editable=False, default=shortuuid.uuid())
4

1 回答 1

0

使用默认值,您始终需要传递callable,而不是结果。

uuid = ShortUUIDField(unique=True, editable=False, default=shortuuid.uuid)

即没有括号。

blank=False是默认值,不需要设置。还要注意这应该是主键:你应该设置primary_key=True,在这种情况下你不需要设置uniqueeditable

于 2019-06-15T09:42:24.280 回答