django の forms.py のデータを消去する方法は知っていますが、これまでに遭遇したことのない奇妙なエラーが発生しています。
私はこれが私のforms.pyです:
class BetaPhoneForm(ModelForm):
class Meta:
model = RegisterHotTable
fields = ('pracPhone',)
def clean_pracPhone(self):
pracPhone = self.cleaned_data['pracPhone']
if pracPhone is None:
raise forms.ValidationError("This value cannot be empty")
else:
if not pracPhone.isdigit():
raise forms.ValidationError("Please enter a valid phone number.")
return pracPhone
そこで、カスタム クリーン メソッド clean_pracPhone を使用してフィールドをクリーニングしています。値を空白のままにして「この値を空にすることはできません」と表示されると、その部分で機能します
フォームに「有効な電話番号を入力してください」というエラーを表示したい。数字の代わりにアルファベットを入力するときの標準の「整数を入力してください」の代わりに。
実際、アルファベットを入力してもこのメソッドは実行されないことに気付きました。
カスタムcharfieldを作成し、ModelFormを使用しないことで、これを「ハック」できることはわかっていますが、実際にはそうしたくありません。
self.cleaned_data の代わりに self.data も試しましたが、うまくいきませんでした。
これを機能させる方法についてのアイデア。
ありがとう!