django项目中遇到的一个奇葩问题
django项目中遇到的一个奇葩问题
- django version:2.2.5
- 问题现象
代码写得好好的,一运行项目,报了这么一个错误:
报错英文的大意:RuntimeError:模型类apps.user.models.User未声明显式的app_label,也不在INSTALLED_APPS中的应用程序中。
奇怪了,明明在settings.py中已经安装了这些app,为什么还会报这个奇葩的问题?
之前根本没有这个错误,是在写了自定义User模型,做User注册登录功能时出了这个问题。
找来找去,也没找到问题所在,也没能解决问题。
最后,在无意中,把根urls.py中的apps.
,都去掉后,就能正确运行了。
把下面这些红线部分的apps.
全部删除
问题解决,项目能跑了
- 问题根源
我也不知道问题的根源是什么,从没有见过这样的问题。只是瞎猜,也许是绝对路径和相对路径的关系。
在settings.py中配置了这么两行代码:
也许系统认为apps.model_name.url是绝对路径,系统找不到了。而model_name.url是相对路径,相对于项目的目录去查找app