wha*_*hat 78 python django django-urls
我在两台独立的计算机上安装了两个应用程序.在计算机A上,在urls.py文件中我有如下行:
(r'^cast/$', 'mySite.simulate.views.cast')
Run Code Online (Sandbox Code Playgroud)
该网址将会对工作都mySite.com/cast/和mySite.com/cast.但是在计算机上有一个类似的URL写出来像:
(r'^login/$', 'mySite.myUser.views.login')
Run Code Online (Sandbox Code Playgroud)
出于某种原因,在计算机B上url mySite.com/login/将会工作但是mySite.com/login会挂起并且不会mySite.com/login/像计算机A那样直接返回.是否有我遗漏的东西?这两个url.py文件看起来都和我一样.
Mic*_*din 180
或者你可以像这样写你的网址:
(r'^login/?$', 'mySite.myUser.views.login')
Run Code Online (Sandbox Code Playgroud)
尾部斜杠后的问号在regexp中使其成为可选项.如果由于某些原因您不想使用APPEND_SLASH设置,请使用它.
Jia*_*aro 96
检查APPEND_SLASHsettings.py文件中的设置
spe*_*ane 17
这改善了@Michael Gendin的答案.他的回答是使用两个单独的URL提供相同的页面.最好login自动重定向到login/,然后将后者作为主页面提供服务:
from django.conf.urls import patterns
from django.views.generic import RedirectView
urlpatterns = patterns('',
# Redirect login to login/
(r'^login$', RedirectView.as_view(url = '/login/')),
# Handle the page with the slash.
(r'^login/', "views.my_handler"),
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
58529 次 |
| 最近记录: |