python - 为什么第一个元素不起作用?

标签 python django django-urls

在我的 urls.py 文件中,第一个元素根本不起作用。到底是什么?

这是我的原始 urls.py 文件:

urlpatterns = patterns(
    url(r'^admin/', include(admin.site.urls)),
    url(r'^home/$', HomeView.as_view(), name='home'),
    url(r'^$', IndexView.as_view(), name="index"),
)

这样设置,我无法访问/admin/,修改它为...

urlpatterns = patterns(
    url(r'^wutlolwutwut/', include(admin.site.urls)),
    url(r'^admin/', include(admin.site.urls)),
    url(r'^home/$', HomeView.as_view(), name='home'),
    url(r'^$', IndexView.as_view(), name="index"),
)

现在确实如此。 原始上的 404 调试不显示管理正则表达式。

证明 original ,并与 modified .

发生了什么?

已解决: pattern() 函数采用a 字符串 前缀作为第一个参数 沿着 nurl() 调用,这就是我的 urls.py 的 bug

最佳答案

patterns 函数的第一个参数应该是一个字符串,充当其余参数的前缀。

关于python - 为什么第一个元素不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23550126/

相关文章:

python - Django:用户名的urlpattern?

python以反向模式打印列表的3个第一个元素

Django 模板扩展了错误的模板

python - 如何在 DJANGO 中为动态创建的 URL 设置 URL 别名?

python - Django 名称模式未在 ulrs.py 中定义

python - Django 1.6 : name 'sitemaps' is not defined

python - Django 教程中出现 NoReverseMatch 错误 : argument not being picked up

Python, pygame 无法打开 chic.jpg

python - 在 3.6 之前的 Python 版本中没有 __set_name__ 的解决方法

python - Python如何评估or语句中的多个条件?