更改字段标识符而不更改字段名称

时间:2012-07-18 10:25:39

标签: django django-forms

另一个系统使用类似XYZ_LOGIN=myname&XYZ_PASSWORD=mydata的参数向我的服务器发出请求。我不能改变那个系统,也不能改变格式。

我用以下形式解析数据:

class MyForm(forms.Form):
    XYZ_LOGIN = forms.CharField()
    XYZ_PASSWORD = forms.CharField()

但这非常难看。我可以用这样漂亮的别名制作字段吗?

   login = forms.CharField(alias='XYZ_LOGIN')

1 个答案:

答案 0 :(得分:2)

您可以设置字段label

XYZ_LOGIN = forms.CharField(label='Login')

正如您在评论中所说,这只会在您呈现表单时使html输出“人性化”,您仍然需要在代码中使用cleaned_data.get('XYZ_LOGIN')

没有类似于您提议的'alias'参数的内置功能。您可以在实例化表单之前预处理发布数据,或自定义表单行为。就个人而言,我会坚持你当前代码的“丑陋”。