python Django2.0如何配置urls文件

时间:2022-07-08 12:05:25

刚开始学django,创建的第一个web工程无法启动,后来发现是由于教程是针对较低版本的Django,我用的是Django2.X和Python3.7,urls文件设置方法和旧版本不一致,按照之前的版本设置,报错信息为TypeError: view must be a callable or a list/tuple in the case of include().。

默认的urls文件配置:
from django.conf.urls import url
urlpatterns = [
    path('admin/', admin.site.urls),
]
需要修改的地方如下:
1.将path改成url,之前一直以为报错是需要导入path的包,导入了几次也不运行,后来发现要把path改成url
from django.conf.urls import url
urlpatterns = [
    url('admin/', admin.site.urls),
]
2.加上自己定义的url地址,我的应用名称是blog,也就是用startapp命令创建的文件夹叫做blog,之前版本的写法是url(r'^blog/index/$', 'bolg.views.index'),2.0版本中views的用法发生了变化,不用括起来,直接使用views.index,其中index是我在views.py文件中定义的访问函数,直接替换成你自己定义的函数即可。
from django.conf.urls import url
urlpatterns = [
    url('admin/', admin.site.urls),
    url(r'^blog/index/$',views.index),
]
3.改完以上2步还是无法运行,为啥?因为用到了admin和views的包没有导入,所以需要导入这2个包,完整的写法如下:
from django.conf.urls import url
from django.contrib import admin
from blog import views
urlpatterns = [
    url('admin/', admin.site.urls),
    url(r'^blog/index/$',views.index),
]
以上,即可启动blog这个应用了。