将文本添加到Django中ChoiceField的choice_label

时间:2010-06-12 11:37:34

标签: django widget

ChoiceField创建一个select html元素,选项显示choice_label,它是每个模型对象的__unicode__。

如何在不修改__unicode__?

的情况下更改choice_label的文本

我有一个产品型号,我想在选项文本中显示产品名称+价格+链接进行编辑。

我在fields.py和widgets.py中搜索过但找不到需要更改的内容。

由于

1 个答案:

答案 0 :(得分:0)

from field类,例如。 ModelChoiceField有一个方法label_from_instance,您可以在子类中覆盖它。 最初它看起来像这样:

def label_from_instance(self, obj):
    return smart_unicode(obj)  

根据您的需要调整这个应该不是什么大问题!