2012-07-18 169 views
1

另一個系統使用類似XYZ_LOGIN=myname&XYZ_PASSWORD=mydata的參數向我的服務器發出請求。我無法更改該系統和格式。更改字段標識符而不更改字段名稱

我分析數據以這樣一種形式:

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

但這是非常難看。我可以用這種好的別名製作字段嗎?

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

回答

2

您可以設置字段的label

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

當您在評論說,這不僅使HTML輸出「人性化」,當你呈現的形式,你仍然必須使用cleaned_data.get('XYZ_LOGIN')在您的代碼中。

沒有內建的功能與您提出的'別名'參數類似。您可以在實例化表單之前預先處理髮布數據,或者自定義表單行爲。就個人而言,我會堅持你當前代碼的「醜陋」。

+0

這是用於表單的HTML表示。在python代碼中,我可以用'form.XYZ_LOGIN'訪問這個字段,這仍然很難看。 – werehuman 2012-07-18 10:33:18

+0

我已經更新了我的答案。 – Alasdair 2012-07-18 10:51:10