我创建了一个index.html
。我希望当有人前往view
和http://www.mypage.com/
时显示此页面(或http://www.mypage.com/index/
)。由于我是Django
的新手,这可能是一个糟糕的方式:
在我的 URLS.PY:
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^$',views.index),
url(r'^index/$',views.index),...
...
这很正常,但我很好奇,当有人去url
时,是否可以将http://www.mypage.com/
从http://www.mypage.com/index/
更改为http://www.mypage.com/
。
我已经尝试过改变这个:
url(r'^$',views.index),
到此:
url(r'^$','/index/'),
但它会引发错误:
Could not import '/index/'. The path must be fully qualified.
有人可以给我一个建议吗?
答案 0 :(得分:9)
如果你想通过代码来实现它:
from django.http import HttpResponseRedirect
def frontpage(request):
...
return HttpResponseRedirect('/index/')
但您也可以直接在网址规则中执行此操作:
from django.views.generic import RedirectView
urlpatterns = patterns('',
(r'^$', RedirectView.as_view(url='/index/')),
)
答案 1 :(得分:2)
您可以做的是以下内容。把它放在你的urls.py中:
url(r'^$',views.redirect_index),
并在您的观点中:
def redirect_index(request):
return redirect('index')