web*_*kie 61 python django choicefield
我有一个ChoiceField,现在如何在需要时获得"标签"?
class ContactForm(forms.Form):
reason = forms.ChoiceField(choices=[("feature", "A feature"),
("order", "An order")],
widget=forms.RadioSelect)
Run Code Online (Sandbox Code Playgroud)
form.cleaned_data["reason"] 只会给我"特色"或"订单"左右.
sha*_*ker 117
请参阅Model.get_FOO_display()上的文档.所以,应该是这样的:
ContactForm.get_reason_display()
Run Code Online (Sandbox Code Playgroud)
在模板中,使用如下:
{{ OBJNAME.get_FIELDNAME_display }}
Run Code Online (Sandbox Code Playgroud)
And*_*uín 74
这可能有所帮助:
reason = form.cleaned_data['reason']
reason = dict(form.fields['reason'].choices)[reason]
Run Code Online (Sandbox Code Playgroud)
小智 20
这是最简单的方法:模型实例引用:Model.get_FOO_display()
您可以使用此函数返回显示名称: ObjectName.get_FieldName_display()
替换ObjectName为您的类名和FieldName您需要获取显示名称的字段.
如果绑定了表单实例,则可以使用
chosen_label = form.instance.get_FOO_display()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
60259 次 |
| 最近记录: |