在Django管理站点中显示值的自定义标签

时间:2010-07-20 22:18:16

标签: python django django-models django-admin

我的一个模型有一个'status'字段,只在代码中修改过。它是1到6的整数(虽然将来可能会改变)。

但是,在管理员网站中,我想显示此数据的标签。所以,我不想显示'5',而是想说'错误'。这意味着我可以轻松地过滤数据库中状态为“错误”的对象以及不知道每个状态意味着什么,因为他们没有参与编码的同事,可以使用管理站点完整

我不知道我是否对此采取了正确的方式,或者是否有可能,但我将不胜感激。我宁愿不改变状态的存储方式,因为它需要重新编写系统的某些部分。事后来看,我认为这是一个不好的方法,但我不认为这个领域会像它那样重要。

2 个答案:

答案 0 :(得分:4)

答案 1 :(得分:0)

您可以创建一个自定义字段类型来覆盖to_pythonget_prep_value以在db中存储整数但在Python中使用字符串值:

http://docs.djangoproject.com/en/dev/howto/custom-model-fields/#django.db.models.django.db.models.Field