注册Django应用时出现ModuleNotFoundError

时间:2019-07-17 07:33:28

标签: django

使用<app>.apps.PagesConfig将我的应用程序包含在settings.py文件中时出现错误。我在虚拟环境中,已安装项目和应用程序,并且该应用程序内部有__init__.py。如果我只是将其注册为<app>,则可以使用,但不能使用完整的<app>.apps.PagesConfig,请参见下面的代码和错误。

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

错误:

ModuleNotFoundError: No module named 'app_test.apps.PagesConfig'; 'app_test.apps' is not a package

2 个答案:

答案 0 :(得分:0)

您必须创建一个文件apps.py,其中包含一个类PagesConfig,以使此工作有效。例如app_test/apps.py可能看起来像:

from django.apps import AppConfig

class PagesConfig(AppConfig):
    name = 'My pages'

请参见Django application documentation

答案 1 :(得分:0)

'app_test.apps.AppTestConfig',

这将是您需要在设置中输入的名称,即apps.py中的类名称,而不是一些随机名称