我有一个为网址'site/main /'定义的视图.我希望能够将(未经身份验证的)用户重定向到默认的"/ admin /"页面进行登录,然后在成功登录后重定向到"/ main /"页面.我按照django文档,但我必须遗漏一些东西,因为我无法让它工作.我的观点如下:
def main(request):
if not request.user.is_authenticated():
return HttpResponseRedirect('admin/?next=%s' % request.path)
else:
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:
找不到页面(404)
请求方法:GET
请求URL:http:// sitename:8080/main/admin /?next =/main/
任何帮助是极大的赞赏 !
您错过/了网址中的首字母:/admin/?next=...
但是这仍然不起作用,因为adminURL对next参数一无所知.这仅适用于实际的登录视图.使用您的代码,用户将登录管理员,但不会被重定向回您的页面.
您应该构建一个登录模板并将其连接到内置的登录视图.然后is_authenticated,您应该只使用login_required装饰器而不是检查视图.
@login_required
def main(request):
...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3572 次 |
| 最近记录: |