所有网址中有一个不匹配

One out of all urls is not matching

我正在使用 Django 1.8,但我无法弄清楚为什么一个特定的 url 没有得到匹配。

url 是 /weapons。 Django 正在向它添加一个尾部斜杠,我认为这是因为 APPEND_SLASH 选项默认为真。即使我尝试在没有斜杠的情况下到达 url,它也会失败,然后尝试使用斜杠。

这是我得到的错误:

顶级urls.py

urlpatterns = [
    url (r'^admin/', include (admin.site.urls)),
    url (r'^', include ('core.urls', namespace = 'core')),
    url (r'^', include ('equipment.urls', namespace = 'equipment')),
]

核心urls.py

urlpatterns = patterns [
    url (r'^$', views.index, name = 'index'),
]

装备urls.py

urlpatterns = [
    url (r'^equipment$', views.index, {'type':'index'}, name = 'index'),
    url (r'^weapons$', views.index, {'type':'weapons'}, name = 'weapons'),
    url (r'^armor$', views.index, {'type':'armor'}, name = 'armor'),
    url (r'^accessories$', views.index, {'type':'accessories'}, name = 'accessories'),
]

我会做:

urlpatterns = [
   url (r'^admin/', include (admin.site.urls)),
   url (r'^home/', include ('core.urls', namespace = 'core')),
   url (r'^equipment/', include ('equipment.urls', namespace = 'equipment')),
]

urlpatterns = [
    url (r'^weapons/$', views.index, {'type':'weapons'}, name = 'weapons'), 
]

注意 django 1.8

中的 [] 而不是 patterns

你的 url 看起来像:

http://localhost:1000/equipment/weapons/ 

哪个说得通?

尝试从 core/urls.pyequipment/urls.py 的网址中删除前导 ^

原来是缓存问题。我使用 Ctrl + F5 尝试了它,但它没有用,所以我在隐身模式下尝试了该页面,但它起作用了。所以我使用开发人员工具重新加载页面,现在它可以工作了。