Django——多apps目录情况下的app注册

文章目录

多apps目录下的app注册

方式1-添加python导包路径

python 复制代码
import sys
sys.path.insert(0, str(BASE_DIR / "apps"))
print(sys.path)

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # 直接写app名即可
    'home',
]
  • 原理:

原来的导包路径是直接在项目下开始:

将导包路径多添加一条:从apps文件夹下导入

方式2-修改AppConfig类名

settings.py

python 复制代码
INSTALLED_APPS = [
    # ...
    'luffycityapi.apps.home',
]

app下的apps.py

python 复制代码
from django.apps import AppConfig


class HomeConfig(AppConfig):
    default_auto_field = 'django.db.models.BigAutoField'
    name = 'project.apps.home'
  • 原理:

注册app时直接从项目下开始导入。

此时django在导入模块时,会找名为 project.apps.home 的app。

而尝试导入一个应用程序时,它会使用 AppConfig 的 name 属性作为模块的全名来查找和加载它,

所以就要修改AppConfig 的 name 属性

相关推荐
赵大仁23 分钟前
极空间 NAS 没有命令行,我逆向了它的桌面客户端
python·ai编程·nas·mcp·极空间
空白40 分钟前
Power BI +VBA 【数据分析】
python
科技苑7 小时前
Python简单网络爬虫教程
爬虫·python
典典分享指南7 小时前
用飞书 Wiki 搭内容作战室:从零搭建团队内容协作中枢
django·flask·numpy·pyqt
Patrick在香港9 小时前
Claude Prompt 香港场景:公文里「今日」落在 6 个日历日上,「翌日」锚错了 5 天
python·自然语言处理·正则表达式·claude·数据清洗
YsyaaabB10 小时前
Python 数值分析
python
阿洛学长10 小时前
计算机二级 Python 基本操作题(15 分)真题笔记(0101 ~ 1903 全套)
python·pycharm
weixin1997010801610 小时前
[特殊字符]️《二手ERP对接电商平台的总体方案:统一数据模型 + 事件驱动 + 灰度上线6原则》(附Python源码)
大数据·python
滚雪球~11 小时前
量化交易 防止Windows电脑自动更新并重启
python·量化
L@ncor12 小时前
第二章可能出现的问题
人工智能·python