You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在子目录创建Django应用后添加至INSTALLED_APPS遇ImportError求助

解决Django子目录应用添加到INSTALLED_APPS的ImportError问题

你遇到的这个问题很常见,核心原因是Django找不到你放在子目录里的应用模块——你直接在INSTALLED_APPS里写appName,但Python只会从项目根目录开始查找模块,你的应用在subFolder下面,自然找不到对应模块。

下面是具体的解决步骤:

  • 第一步:确保子目录是Python可识别的包
    检查subFolder目录下有没有__init__.py文件(空文件即可)。如果没有,手动创建一个——Python需要这个文件把目录标记为“可导入的包”。

  • 第二步:用完整的包路径添加到INSTALLED_APPS
    把INSTALLED_APPS里的appName改成subFolder.appName,示例代码如下:

    INSTALLED_APPS = [
        # 其他默认应用...
        'subFolder.appName',
    ]
    

    如果你的应用在更深的层级(比如subFolder1/subFolder2/appName),就写subFolder1.subFolder2.appName,用点号连接所有父目录。

  • 第三步:确认应用的AppConfig配置正确
    打开subFolder/appName/apps.py,检查AppConfig类的name字段是不是subFolder.appName——用startapp命令创建的话应该已经自动生成了,但最好确认一下:

    from django.apps import AppConfig
    
    class AppnameConfig(AppConfig):
        default_auto_field = 'django.db.models.BigAutoField'
        name = 'subFolder.appName'  # 这里必须是完整路径
    

做完这些之后,运行python manage.py makemigrations和python manage.py migrate测试一下,应该就能正常识别你的应用了。

内容的提问来源于stack exchange,提问作者pyt ho9

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:14:10