模块无法加载到新的 Django 项目中

modules cannot load in a new Django project

到目前为止,我用 django 做了 2 个项目,一切都很顺利。

使用 python 3.6 和 conda env 与 django 3.1.4

我正在按照教程开始我的新项目,就像我之前的项目一样:https://docs.djangoproject.com/fr/3.1/intro/tutorial01/

使用“django-admin startproject ngedemocarto”开始一个新的 然后使用“django startapp sitemanager”它给了我这个:

但是在这个项目中,当我尝试调用任何应用程序模块(如“apps.py”或“urls.py”

时,突然出现错误

如果我像这样在 settings.py 中添加应用程序配置,就会出现典型错误:

INSTALLED_APPS = [
    'sitemanager.apps.SitemanagerConfig'
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

解决此错误:

ModuleNotFoundError: No module named 'sitemanager.apps.SitemanagerConfigdjango'; 'sitemanager.apps' is not a package

像 manage.py runserver 或 manage.py migrate 这样的每个命令在导入时都失败了,因为它无法解析像“sitemanager.apps”或“sitemanager.urls”这样的任何名称。 =14=]

我检查了基本的东西:

刚开始这个新项目后,我处于一个非常基本的配置中,但没有任何效果...

我尝试构建一个新的 conda env,开始一个新的 django 项目,同样的事情。

我真的不知道应该去哪里解决这个问题以及如何解决它。 python 导入模块的方式以及我如何使用我的 python 环境可能是个问题, 也许 sys.path 有问题

我的其他项目继续工作,例如我可以使用 runserver 和 migrate。

编辑并回答:

嗯, 我的 appconfig 缺少昏迷 而且我没有在 sitemanager 中创建 urls.py(仅在主项目中)....

我想我应该休息一下,谢谢。

你必须在'sitemanager.apps.SitemanagerConfig'后面加一个逗号。缺少逗号会导致 django 试图找到不存在的 'sitemanager.apps.SitemanagerConfigdjango':

之前:

INSTALLED_APPS = [
    'sitemanager.apps.SitemanagerConfig'
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

之后:

INSTALLED_APPS = [
    'sitemanager.apps.SitemanagerConfig',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

或者,可以只添加 'sitemanager' 而不是 'sitemanager.apps.SitemanagerConfig'

后面少了一个逗号
INSTALLED_APPS = [
    'sitemanager.apps.SitemanagerConfig'