当前位置: 首页 > news >正文

Django里多app

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

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

请添加图片描述

1.

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

# 在 apps.py 文件from django.apps import AppConfigclass App01Config(AppConfig):default_auto_field = 'django.db.models.BigAutoField'# 得添加 apps, 这个 apps 代表是 “apps文件夹”name = 'apps.app01'

2.

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

请添加图片描述

# 在 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 文件里做下修改

请添加图片描述

# 在 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),
]

给个赞呗~

http://www.lryc.cn/news/360550.html

相关文章:

  • Prime1 - 信息收集和分析能力的试炼
  • 3.location的写法
  • AndroidStudio设置允许APP获取定位权限
  • Spring Boot 统一数据返回格式
  • Android 项目Gradle文件讲解(Groovy和Kotlin)
  • python-最接近target的值
  • 转换张量形状:`nlc_to_nchw` 函数详解
  • 「架构」云上自动化运维及其应用
  • 分布式和集群的区别
  • 最新h5st(4.7.2)参数分析与纯算法还原(含算法源码)
  • Spark大数据 掌握RDD的创建
  • Chrome谷歌浏览器如何打开不安全页面的禁止权限?
  • 3D目标检测入门:探索OpenPCDet框架
  • JS异步编程
  • 多元联合分布建模 Copula python实例
  • 单号日入50+,全自动挂机赚钱
  • LabVIEW老程序功能升级:重写还是改进?
  • chrome谷歌浏览器开启Gemini Nano模型
  • C语言王国——内存函数
  • 【计算机组成原理】1.1计算机的软硬件组成(记录学习计算机组成原理)
  • Qt xml学习之calculator-qml
  • 低代码开发系统是什么?它有那些部分组成?
  • 2024年西安交通大学程序设计竞赛校赛
  • 【学习Day5】操作系统
  • 学习小记录——python函数的定义和调用
  • RHEL7.9修改分区
  • 【Linux】命名管道
  • IMX6Q基于linux4.1.15调试音频芯片tas2505
  • 卷积常用网络
  • Firebase Local Emulator Suite详解