未找到Python URL
我正在使用Python教程,但作者似乎没有更新它,因为代码使用的是不推荐使用的Python代码,特别是:未找到Python URL,python,django,Python,Django,我正在使用Python教程,但作者似乎没有更新它,因为代码使用的是不推荐使用的Python代码,特别是: from django.conf.urls import patterns urlpatterns = patterns('', (r'^hello-world/$', index), ) 我查阅了Django文档和其他StackOverFlow问题,但无法解决如何使用当前方法的问题。我添加了以下内容来替换上述内容: urlpatterns = [
from django.conf.urls import patterns
urlpatterns = patterns('',
(r'^hello-world/$', index),
)
我查阅了Django文档和其他StackOverFlow问题,但无法解决如何使用当前方法的问题。我添加了以下内容来替换上述内容:
urlpatterns = [
url(r'^hello-world$', hello),
]
下面是完整的hello.py文件:
import sys
from django.conf import settings
from django.conf.urls import url
from django.http import HttpResponse
from django.core.management import execute_from_command_line
settings.configure(
DEBUG=True,
SECRET_KEY='thisisabadkeybutitwilldo',
ROOT_URLCONF=sys.modules[__name__],
)
def index(request):
return HttpResponse('Hello, World')
import views
urlpatterns = [
url(r'^hello-world$', hello),
]
if __name__ == "__main__":
execute_from_command_line(sys.argv)
这是我从Python中得到的错误消息:
Django使用main中定义的URLconf尝试了以下URL
模式,按以下顺序:^$[name='hello']当前URL,hello,
这些都不匹配
我做错了什么 提供的代码不起作用。我测试了链接教程中的代码,它在1.8中运行良好。您的代码有一个随机导入视图和一个未定义的变量hello。因此,我对您的代码进行了逻辑编辑并进行了测试,在1.11中一切正常:
import sys
from django.conf import settings
from django.conf.urls import url
from django.http import HttpResponse
from django.core.management import execute_from_command_line
settings.configure(
DEBUG=True,
SECRET_KEY='thisisabadkeybutitwilldo',
ROOT_URLCONF=sys.modules[__name__],
)
def index(request):
return HttpResponse('Hello, World')
urlpatterns = [
url(r'^hello-world$', index),
]
if __name__ == "__main__":
execute_from_command_line(sys.argv)
您提供的代码根本不起作用,它肯定不会引发错误。当我做任何必要的更改时,它工作正常。谢谢!看起来我只需要在这一行中使用“index”而不是“hello”:urlr“^hello world$”,hello,没问题。是的,我想那是我想要的名字,但是改成了索引,因为那是我第一次看到的名字。