【发布时间】:2017-08-29 14:47:08
【问题描述】:
我知道您可以在模型的 admin.py 中设置 readonly_fields,但我正在尝试将字段设置为只读,这取决于它在数据库中的(保存的)值。
我可以创建一个自定义字段类,但无法传递模型实例的值,因此我可以实现上述目的。
例如
class MytypeField(models.CharField):
def __init__(self,*args,**kwargs):
PAGE_LAYOUT_CHOICES = (
('column1','One Column'),
('column2','Two Columns')
)
kwargs['max_length'] = 7
kwargs['choices'] = PAGE_LAYOUT_CHOICES
kwargs['default'] = 'column1'
super(MytypeField,self).__init__(*args,**kwargs)
在模型中
layout = MytypeField()
有没有办法在 admin.py 而不是模型本身中做到这一点?我无法将模型实例传递给这个自定义类,而且我确信无论如何都不是这样做的!
非常感谢!
【问题讨论】:
标签: django