yos*_*ssi 10 python django default model
我想从模型方法中给出模型字段默认值.
我怎样才能做到这一点 ?
当我尝试这个代码
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)
Run Code Online (Sandbox Code Playgroud)
我得到NameError:名称'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)
Run Code Online (Sandbox Code Playgroud)
我最终这样做了:(从两者中删除自我)
Class Person(models.Model):
def create_id():
return os.urandom(12).encode('hex')
name = models.CharField(max_length = 255)
id = models.CharField(max_length = 255,default = create_id)
Run Code Online (Sandbox Code Playgroud)
它正在工作,但我不确定这是最好的还是正确的方法。
| 归档时间: |
|
| 查看次数: |
3919 次 |
| 最近记录: |