Django 模型字段默认来自模型方法

2024-01-09

我想从模型方法中给出模型字段默认值。

我怎样才能做到这一点 ?

当我尝试这段代码时

Class Person(models.Model):
    def create_id(self):
        return os.urandom(12).encode('hex')

    name = models.CharField(max_length = 255)
    id = models.CharField(max_length = 255,default = self.create_id)

我收到 NameError: name 'self' 未定义。

如果我删除“self”,我会发现“create_id”需要 1 个参数。


您可以像这样定义全局方法:

def create_id():
    return os.urandom(12).encode('hex')

Class Person(models.Model):
   name = models.CharField(max_length = 255)
   id = models.CharField(max_length = 255,default = create_id)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django 模型字段默认来自模型方法 的相关文章

随机推荐