Django找不到网址格式

时间:2015-09-08 13:00:46

标签: python django django-urls

我无法弄清楚为什么Django无法在我的应用程序中找到请求的URL。

这是我得到的错误代码:

 Using the URLconf defined in littlelogsms.urls, Django tried these URL patterns, in this order:
^admin/
^$
The current URL, success/, didn't match any of these.

这是我的 sms.urls.py 文件:

from django.conf.urls import url

from sms import views

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

以下是应用 urls.py 文件:

from django.conf.urls import include, url
from django.contrib import admin


urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    url(r'^$', include('sms.urls')),
]

我找不到我正在犯的错误。有什么想法吗?

2 个答案:

答案 0 :(得分:9)

此问题是此网址格式中的美元符号。

url(r'^$', include('sms.urls')),

插入符^匹配字符串的开头,而美元$与字符串的末尾匹配,因此^$仅匹配索引URL /

您应该删除美元并将其更改为:

url(r'^', include('sms.urls')),

答案 1 :(得分:1)

您应该尝试使用基本网址,例如

这是应用程序urls.py文件:

from django.conf.urls import include, url
from django.contrib import admin
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^sms', include('sms.urls')),   //the 'sms' is your defined name
]

这是我的sms.urls.py文件:

from django.conf.urls import url

from sms import views

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

您应该尝试访问您的网址中的网址

sms / //用于访问视图中的索引函数 sms / success //用于访问视图中的成功函数

或者你可以使用模板中表单的动作标签中的标签来调用网址,

{%url'短信:索引或成功' %} // index,success是sms.urls中给出的名称空间