2

Django の組み込みログイン ビューを使用したい:django.contrib.auth.views.login

このビューは素晴らしい仕事をします。ログインが間違っている場合と、アカウントがまだ検証されていない場合を検出しますが、エラー メッセージは非常に短いものです。

アクティブ化されていないアカウントの場合:

このアカウントは非アクティブです。

より冗長にする適切な方法を知っていますか?

私は次のようなものを好みます:

このアカウントは非アクティブです。アクティベーション リンクが記載された電子メールが送信されました。

実際、私は自分でログインを行い、テンプレートにエラー コンテキストを渡します。

context = {}
  if request.method == 'POST':
    email = request.POST['email']
    password = request.POST['password']

    user = authenticate(username=email, password=password)
    if user is not None:
      if user.is_active:
        login_django(request, user)
        return redirect('consumer.views.dashboard')
      else:
        context = {'error': 'disable_account'}
    else:
      context = {'error': 'invalid_account'}
  return render(request, 'login.html', context)

テンプレートで、どのようなエラーかを確認できます。

4

1 に答える 1