ログイン用に次のコードがあります。
class LoginForm(forms.Form):
email = forms.EmailField(max_length = 254, min_length = 6)
password = forms.CharField(min_length = 8, widget = forms.PasswordInput())
def Login(self):
email = self.cleaned_data.get('email')
password = self.cleaned_data.get('password')
user = authenticate(email = email, password = password)
if (user is None) or (user is not None and user.is_active is False):
raise forms.ValidationError('Login is incorrect.')
return user
ただし、自分のサイトでデバッグを false に設定すると、ログインが正しくないときは常に、ValidationError を表示するフォームではなく 500 エラーが発生します。私はそれを次のように呼んでいます:
if form.is_valid():
user = form.Login()
それはviewメソッドにあります。ここで何が欠けていますか?デバッグがfalseに設定されているときに500にならないように、このフォームエラーを適切に呼び出すにはどうすればよいですか?