问题背景
django的model field需要动态设置默认值,具体案例如下:
原始代码如下,model是Application,其中字段ignore_fort的默认值设置为False
class Application(TimestampedModel):
name = models.CharField(max_length=255, null=True)
ignore_fort = models.BooleanField(default=False)
然而现在有这样一个需求:default需要根据某个变量ENV
进行动态设置,如果ENV
是UAT或者FAT(不区分大小写,具体分支,比如uaT01也可以),则default设置为True,否则设置为False
首先想到的是如下代码:
class