关于python:Django找不到URL模式

Django can't find URL pattern

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

这是我得到的错误代码:

1
2
3
4
 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文件:

1
2
3
4
5
6
7
8
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文件:

1
2
3
4
5
6
7
8
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')),
]

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


这个问题是这个网址模式中的美元符号。

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

插入符号^匹配字符串的开头,如果字符串,则美元$匹配结尾,因此^$仅匹配索引URL /

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

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


你应该试试基本网址,比如

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

1
2
3
4
5
6
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文件:

1
2
3
4
5
6
7
8
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 / //用于访问视图中的索引函数
短信/成功//用于访问视图中的成功功能

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

{%url'sms:index或success'%} // index,success是sms.urls中给出的名称空间