1今天在使用pycharm运行django项目的时候遇到的蜜汁bug。
我这里的详细报错是:ModuleNotFoundError: No module named 'django.contrib.auth.middleware.py'; 'django.contrib.auth.middleware' is not a package
看到middleware.py,我想起了前一阵对组件创建的middleware.py重命名时,pycharm出现了下面的提示:
我当时直接点的执行重构导致许多文件的数据发生了变化,如setting.py中的MIDDLEWARE:
#正常情况
'django.middleware.csrf.CsrfViewMiddleware',
#重构后
'django.middleware.py.csrf.CsrfViewMiddleware',
这就是我的,产生“找不到模块”报错的原因了。
解决方案:
我这里报错是因为配置文件的middleware字段重构成了middleware.py,因此将该文件(我这里的middleware.py)重新命名为middleware,这时会看到属性的重构提醒界面:
点击下方的执行重构,发现如setting.py中的MIDDLEWARE中受影响的那一行发生了变化(重构的文件不同,受影响字段也会不同)。
再次运行发现运行成功了,问题解决。
希望对你有所帮助^_^