2013-01-10 54 views
1

改變每場的消息是冗餘覆蓋默認的錯誤信息,所以我做出了新的包裝Django的模型形式或現場

class CharFieldWrapper(forms.CharField):  

    def __init__(self, *args, **kwargs): 
     super(CharFieldWrapper, self).__init__(*args, **kwargs) 
     self.error_messages = {'required' : 'XXXX: YOU SHOULD PUT SOMETHING!' }  

是啊,這是行不通的。

是任何人都知道如何進行實地的包裝類或形式改變error_messages?

謝謝。

回答

2

嘗試將它們傳遞的參數:

1

沒有您init方法的問題:

class CharFieldWrapper(forms.CharField): 

    def __init__(self, *args, **kwargs): 
     super(CharFieldWrapper, self).__init__(*args, **kwargs) 
     self.error_messages['required'] = 'XXXX: YOU SHOULD PUT SOMETHING!' 

此外,在做self.error_messages = {'required': 'my error msg'}你完全覆蓋error_messages這是不好的,因爲可能還有一些其他驗證錯誤。你應該更新self.error_messages字典不會像我那樣覆蓋它。