五、Django学习之django3.0.3报错:Specifying a namespace in include() without providing an app_name

在根目录下的urls.py中使用了include方法,并且使用了namespace参数,如下图:

 url(r'^my_app/', include(('my_app.urls'), namespace="my_app"))

在启动项目时,会报错:'Specifying a namespace in include() without providing an app_name '

这是因为django2相对于django1做了改动,在include函数里增加了参数app_name,表示app的名字。

解决方法有两种:

1. 在include中传入该app的名字(第二个参数),即

url(r'^my_app/', include(('my_app.urls','my_app'), namespace="my_app"))

2.在每一个app的urls.py文件中添加app_name变量,即

 url(r'^my_app/', include(('my_app.urls',app_name), namespace="my_app"))

猜你喜欢

转载自www.cnblogs.com/chushujin/p/12391150.html