我有以下urls.py文件
urlpatterns = patterns('',
url(r'^$', include('main.urls')),
url(r'crm/',RedirectView.as_view(url='/crm/accounts/login'), name='home'),
url(r'^crm/accounts/', include('accounts.urls')),accounts.urls有两张记录
urlpatterns = patterns('',
url(r'^login/', login, name='login'),
url(r'^logout/', logout, name='logout'),
)但是,当我访问localhost:8000/crm/ (不管有没有尾随斜杠)时,它就需要我访问localhost:8000/crm/ access /而不是RedirectView中所说的帐户/登录。我用/crm/ RedirectView.as_view作为参数来测试一些东西,但是在改变它之后,它就不能工作了。重新启动服务器和浏览器。
发布于 2014-07-15 13:58:42
更改以下两行的顺序。(还在^前面加上crm/。)
url(r'^crm/',RedirectView.as_view(url='/crm/accounts/login'), name='home'),
url(r'^crm/accounts/', include('accounts.urls')),或者,将crm/更改为^crm/$,使其只匹配crm/,而不是/crm/accounts/...。
url(r'^crm/$',RedirectView.as_view(url='/crm/accounts/login'), name='home'),
url(r'^crm/accounts/', include('accounts.urls')),否则,访问/crm/accounts/login,/crm/accounts/logout将由RedirectView.as_view(url='/crm/accounts/login')处理,因为首先使用的是第一个与之匹配的url模式。
https://stackoverflow.com/questions/24760112
复制相似问题