Django里多app

在 Django 里的某一个项目,里面得包含很多 App (功能),那么如何在该项目里管理这么多App呢?

先说明下背景:未先创建 apps 文件夹来存各个app文件夹,直接在项目文件目录里创建各个app。为了便于管理,得将各个app放到 apps 文件夹里,看下放的截图。

1.

将各个app放到 apps 文件夹里之后,得在对应的 app 里的 apps.py 文件里做修改,类似这样

python 复制代码
# 在 apps.py 文件

from django.apps import AppConfig

class App01Config(AppConfig):
    default_auto_field = 'django.db.models.BigAutoField'
	# 得添加 apps, 这个 apps 代表是 "apps文件夹"
    name = 'apps.app01'

2.

在项目的文件夹里的 settings.py 做修改,这样调用各个app

python 复制代码
# 在 settings.py 文件里

from pathlib import Path
import os

# Build paths inside the project like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve().parent.parent

# 添加下面两行
import sys
sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))

....

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'app01.apps.App01Config',  # 添加这一行
    'assetManagement.apps.AssetmanagementConfig',   # 添加这一行
]

3.

urls.py 文件里做下修改

python 复制代码
# 在 urls.py 文件修改

from django.contrib import admin
from django.urls import path
from apps.app01 import views as apps_views  # 得添加 apps, 这样才能找到对应的views.py。并且得创建一个名,以防 views.py 名称搞混乱
from apps.assetManagement import views as am_views  # 得添加 apps, 这样才能找到对应的views.py。并且得创建一个名,以防 views.py 名称搞混乱

urlpatterns = [
    #path('admin/', admin.site.urls),
    path('demo/', apps_views.demo),

    path('ceshi/', am_views.ceshi),
]

给个赞呗~

相关推荐
这个DBA有点耶2 分钟前
数据库“家谱”系列之一:关系型数据库的4大核心组件详解
数据库·mysql·架构
ClouGence9 分钟前
数据库迁移同步工具 CloudCanal v6.4.0.0 发布,Oracle、SAP Hana 等同步能力再升级
数据库
ClouGence10 分钟前
2026 数据库 CI/CD 工具大盘点:4 款热门工具怎么选?
数据库·后端·ci/cd
云和恩墨10 分钟前
云和恩墨亮相2026数博会,与超聚变联合呈现“算力+数据”一体化管理方案
数据库
ClouGence32 分钟前
数据库 CI/CD 再升级:CloudDM 4.1.0 支持多数据库发布流编排
数据库·sql·ci/cd
SelectDB34 分钟前
为什么越来越多分析数据库开始重视实时更新,而不仅仅是查询性能?
大数据·数据库·数据分析
SelectDB37 分钟前
为什么今天值得重新比较 Apache Doris 和 StarRocks?
大数据·数据库·数据分析
l12586538 分钟前
# LangGraph Deep Research Agent 全流程设计:多轮研究、人机协同与真实来源管理
数据库·人工智能·python·算法·自然语言处理·oracle·langchain
Frank_refuel38 分钟前
MYSQL【进阶】 -> 索引(了解)
数据库·mysql
SelectDB44 分钟前
开源!Apache Doris 上线 Profile 可视化诊断:基于 Doris Skills 破解 AI 误诊难题
数据库·agent·自动化运维