原因:1.0 2.0版本不同:
Django2.0取消了url函数,引入了path 和re_path
-
url 既支持正则 像r’^$’ ;也支持直接匹配(非正则表达式)
-
path不支持正则表达式,所以按教材上:
"""定义learning_logs的URL模式"""
from django.urls import path, re_path
from . import views
urlpatterns = [
# 主页
path(r'^$', views.index, name='index'),
];
就会出现The empty path didn’t match any of these的错误,因为在learning_logs.py中匹配不到里面的空字符串,path会把’^$'当成一个字符串,而不是正则表达式
解决办法:用re_path
re_path是支持正则匹配的
"""定义learning_logs的URL模式"""
from django.urls import path, re_path
from . import views
urlpatterns = [
# 主页
re_path(r'^$', views.index, name='index'),
];