好吧,我的应用程序中有自己的会话和身份验证例程。当用户转到app/login/
页面时,如果他或她没有登录,那么他/她将看到要提交的表单,否则我要将用户重定向到根页面app/
。登录视图如下所示:
def index(request):
if sessionCheck(request):
# here I want to redirect one level above to app/
pass
else:
template = loader.get_template('login/login.html')
... other code which is not important
在PHP
,我想我会这样做:
header("Location: /");
exit;
但是我应该怎么做Django
呢?
您可以使用redirect
快捷方式功能:
from django.shortcuts import redirect
return redirect('some-view-name')
除了命名视图之外,您还可以指定URL。因此,如果您的索引网址没有名称,则可以指定“ /”。
from django.http import HttpResponseRedirect
from django.core.urlresolvers import reverse
return HttpResponseRedirect(reverse('some-view-name'))
为了拥有命名视图,您必须在urls.py中提供一个name
参数。例如:
urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^some-view$', views.something, name='some-view-name'),
]
更多关于上Django的教程,Django的URL调度。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句