我有一个登录页面,除了重定向到引荐来源页面外,其他都运行正常。用户在应用程序内收到带有直接链接的电子邮件,他们(在此示例中)尚未登录,并被重定向到登录页面。成功登录后,用户将被重定向到硬编码路径。请参见下面的示例。
电子邮件中的网址: http://localhost:8000/issueapp/1628/view/22
登录页面的URL: http://localhost:8000/login?next=/issueapp/1628/view/22
登录视图(带有硬编码的重定向):
def login_user(request):
state = "Please log in below..."
username = password = ''
if request.POST:
username = request.POST['username']
password = request.POST['password']
user = authenticate(username=username, password=password)
if user is not None:
if user.is_active:
login(request, user)
state = "You're successfully logged in!"
return HttpResponseRedirect('/issueapp/1628/')
else:
state = "Your account is not active, please contact the site admin."
else:
state = "Your username and/or password were incorrect."
return render_to_response(
'account_login.html',
{
'state':state,
'username': username
},
context_instance=RequestContext(request)
)
登录视图(带有“下一步”重定向):
def login_user(request):
state = "Please log in below..."
username = password = ''
if request.POST:
username = request.POST['username']
password = request.POST['password']
user = authenticate(username=username, password=password)
if user is not None:
if user.is_active:
login(request, user)
state = "You're successfully logged in!"
return HttpResponseRedirect(request.GET['next'])
else:
state = "Your account is not active, please contact the site admin."
else:
state = "Your username and/or password were incorrect."
上面的视图导致一个异常"Key 'next' not found in <QueryDict: {}>"。即使在url和表单中,该表单似乎也没有发布“ next”变量。我已经搜索并四处张望,无法弄清为什么它不起作用。有任何想法吗?
慕斯王
达令说
相关分类