165. django版本更新导致的问题
摘要:本文记录罗列了在django使用过程中,因为django2.x版本和旧版本改进后部分旧代码运行过程中出现的错误以及解决方法,相关解决方法见参考文献。
参考文献1:django2.x报错No module named 'django.core.urlresolvers'
参考文献2:Django中url的正则表达式错误
运行环境:Ubuntu18,django2.0.7
(1)ModuleNotFoundError: No module named 'django.core.urlresolvers'
错误描述:ModuleNotFoundError: No module named 'django.core.urlresolvers'
错误原因:此django的版本已经将django.core.urlresolvers替换为了django.urls
问题解决:修改模块导入代码,将from django.core.urlresolvers import resolve更改为from django.urls import resolve.同理其它遇到相似类型错误,替换django.core为django.urls即可
(2)django中url的正则表达式错误
错误说明:
(2_0.W001) Your URL pattern '^$' [name='home'] has a route that contains '(?P<', begins with a '^', or ends with a '$'. This was likely an oversight when migrating to django.urls.path().
错误原因:据说django不支持正则表达式了(有待验证)
解决方法:
参考文献2,将urlpatterns中的“‘^$’”的正则表达式改为“‘’”
第1次:2018年9月4日22:44:49