2016-07-08 68 views
-6
def login(request): 
    c = {} 
    c.update(csrf(request)) 
    return render_to_response(request, 
'login.html', c) 

def auth_view(request): 
    username = request.POST.get 
('username', '') 
    password = request.POST.get 
('password', '') 
    user = auth.authenticate 
(username = username, password = 
password) 
    if user is not None: 
     auth.login(request,user) 
     if request.method == 'POST': 
      return HttpResponseRedirect('accounts/loggedin/') 
     else: 
      Return HttpResponseRedirect('accounts/invalid/') 

每else语句执行的时间......我不知道什么是错 ..... 在我的登录页面,当我输入登录惠特其正确的细节与否它总是重定向到“账号/无效”我想建立一个简单的登录页面为我的项目

Views.py

+1

的这是关系到你的[其它问题](http://stackoverflow.com/q/38258935/1324033)? – Sayse

+0

1)这是你老问题的一个骗局,2)给我们一些细节。什么错误?什么不受欢迎的影响 – Li357

+0

每次如果request.method =='POST'已被忽略else语句执行每次whenevr我已输入登录详细信息它重定向到'帐户/无效/'是否详细r r corrct或不 –

回答

0

你的逻辑是不好的,如果用户不无:改用如果user.is_anonymous:

试试我的逻辑

def login(request): c = {} c.update(csrf(request)) return render_to_response(request, 'login.html', c)

def auth_view(request): username = request.POST.get ('username', '') password = request.POST.get ('password', '') user = auth.authenticate (username = username, password = password) if user.is_anonymous: auth.login(request,user) if request.method == 'POST': return HttpResponseRedirect('accounts/loggedin/') else: return HttpResponseRedirect('accounts/invalid/')

注意:你的回报是在帽

现在,它应该工作。尝试一下!!

0

而不是使用HttpResponseRedirect使用render

def something(request): 
    if something: 
     do something() 
     if something == 'POST': 
      return render(request, 'accounts/loggedin.html') 
     else: 
      return render(requset, 'accounts/invalid.html') 
相关问题