2016-07-30 45 views

答えて

1

あなたはdjango.contribからログインをインポートする:要求インスタンスとユーザモデルのインスタンス -

from django.contrib.auth import authenticate, login 

def login(request): 
if request.user.is_authenticated(): 
    return render(request, 'Default.html') 

mensaje = '' 
if request.method == 'POST': 
    username = request.POST.get('username') 
    password = request.POST.get('password') 
    User = authenticate(username=username, password=password) 
    if User is not None: 
     if User.is_active: 
      login(User) 
      return render(request, 'Default.html') 
     else: 
      return render(request, 'accounts/login.html', {'mensaje':mensaje}) 
    else: 
return render(request, 'accounts/login.html', {'mensaje':mensaje}) 
+0

まさに、あなたは絶対に正しいです、私がそれを実現して与えられました、ありがとう –

0

また、マニュアルに従って、login()機能は2つのが渡される引数を期待します.authしかし次のコード行を見てください。

from django.contrib.auth import authenticate, login 

def login(request): 
    if request.user.is_authenticated(): 
     return render(request, 'Default.html') 

はい、あなたは自分でログインメソッドをシャドウしています。解決策は、あなた自身のfuncitonドキュメントでは、このような

def my_login(request): 
    if request.user.is_authenticated(): 
     return render(request, 'Default.html') 
+0

ので、最初の送信に失敗したが、私はこの下を宣言名前を変更するだろう失敗 - ログイン()が1を取ります」位置的な議論しかし2は与えられた "... –

関連する問題