【发布时间】:2019-06-28 10:22:37
【问题描述】:
我正在尝试覆盖模型的 pk 以使用随机生成器。
这是模型字段:
pk = models.AutoField(auto_created=True, primary_key=True, verbose_name='ID', default=genkey)
和密钥生成器:
def genkey():
return random.randrange(1,142857)
所以,我想让自动字段尽可能多地执行genkey 函数,直到它得到一个未使用的密钥。是否有我没有找到的属性,或者我需要在生成器中对其进行编码(通过获取所有使用的键)?
我的主要目标是使生成器尽可能通用,而不是为每个模型定义自定义生成器。
【问题讨论】:
-
但
AutoField的想法是 数据库 将自动创建一个 id。 -
我知道,它可以是
IntegerField或其他,我在这里使用AutoField,因为它是默认的pk 字段类型。
标签: django django-models parameters default