我可以在Django模型中将editable的默认值从True更改为False

时间:2011-03-14 12:56:48

标签: django django-models

我知道我可以明确地在一个值上设置字段选项editable False。例如

name = models.CharField(editable=False)

但是可以更改字段选项的默认值。因此,对于示例,editable默认为False,我必须明确地将其设置为True才能使该字段可编辑?

2 个答案:

答案 0 :(得分:1)

创建一个名为DefaultNotEditableCharField的新Field类,它继承CharField中的所有内容,但会覆盖editable = False。

就个人而言,我会说它很糟糕,并且在任何你想要编辑为假的地方输入'editable = False',因为这是记录在案的方式,它将是人们所期望的。

答案 1 :(得分:0)

一种方法是默认情况下使字段可编辑,并从您将用于编辑模型的表单类中排除字段,或者在表单级别将字段设置为只读。