在 Django 的 setting.py 的 Installed apps 部分添加应用序列

Adding apps sequence in Installed apps section in setting.py in django

我想添加我的博客应用程序模板,所以我只是在我的已安装应用程序部分添加了 blog.apps.BlogConfig,但这是我找到的

INSTALLED_APPS = [
'blog.apps.BlogConfig',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',

] 在顶部添加 blog.app 给出了“没有模块名称 ..”的错误 但是

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog.apps.BlogConfig',

]

最后添加效果很好......我想知道它为什么起作用以及这个序列是如何影响的,并且在教程中,该人在开始时添加了 blog.apps.blogConfig 但对他有用(2.0版本)和我的版本也是一样的。

请参阅 this 文档页面,这是关于 contenttypes 模块的。

Django includes a contenttypes application that can track all of the models installed in your Django-powered project

对于博客应用程序,您很可能在其中有模型。另外,博客应该属于一个用户,所以需要authenticationsessions模块;如果您在 HTML 文件中使用了 {% load static %} 标签,则需要 staticfiles 模块。

如果你在 Django 加载它的模块之前加载你的应用程序,事情将无法正常工作,这就是为什么你只在 Django 完成加载它自己的东西之后才加载你自己的东西。