我有一个代码生成器是这样的:Python不产生新的代码
extra_funcs.py
def id_generator(size=4, chars=string.ascii_uppercase + string.digits):
return ''.join(random.choice(chars) for _ in range(size))
而且有一个Django模型是这样的:
models.py
from .extra_funcs import id_generator
def generator(digit):
ret = id_generator(digit)
return ret
class Service(models.Model):
business = models.ForeignKey(Business)
sub_service = models.ForeignKey('self', blank=True, null=True, related_name='sub_services')
code = models.CharField(max_length=20, default=generator(6), blank=False, editable=False)
en_title = models.CharField(max_length=50, blank=False)
update = models.DateTimeField(auto_now=True)
timestamp = models.DateTimeField(auto_now_add=True)
我不知道为什么它不会产生新的值,它只是每次都返回一次值!我该怎么办?
请注意,lambda不能被序列化。这不会与迁移一起使用,迁移序列化字段及其所有参数。 – knbk