基板設計記録WEBアプリその30
画像のバリデーション(入力チェックの事)を実装する
コードはforms.pyに書く
Python3系だとValidationErrorの書き方が少し変更されている
raise forms.ValidationError
と書かないとデバッグ出来ない
今回は
・jpegやpng以外のものはアップロード出来ない
・25MB以上の画像ファイルはアップロード出来ない
というバリデーションを設ける
#forms.py class UploadImgForm(forms.Form): avatar = forms.ImageField(required=True) def Img_avatar(self): ''' 1.fileformat 2.filesize ''' avatar = self.cleaned_data['avatar'] if not avatar: raise forms.ValidationError('投稿されたデータが画像ではありません!') IMG_SIZE = 25*1000*1000 if avatar.size > IMG_SIZE: raise forms.ValidationError( '画像サイズが大きすぎます。%sMBより小さいサイズの画像を入れてください。' \ % str(IMG_SIZE//1000//1000) ) return avatar
次回は、ちゃんとバリデーションを出来ているか確認する