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

给个赞呗~

相关推荐
weixin_419658311 小时前
MySQL数据库备份与恢复
数据库·mysql
专注API从业者2 小时前
基于 Flink 的淘宝实时数据管道设计:商品详情流式处理与异构存储
大数据·前端·数据库·数据挖掘·flink
小猿姐3 小时前
KubeBlocks for Milvus 揭秘
数据库·云原生
AI 嗯啦3 小时前
SQL详细语法教程(四)约束和多表查询
数据库·人工智能·sql
杜子不疼.4 小时前
《Python学习之文件操作:从入门到精通》
数据库·python·学习
TDengine (老段)4 小时前
TDengine IDMP 高级功能(4. 元素引用)
大数据·数据库·人工智能·物联网·数据分析·时序数据库·tdengine
DashVector4 小时前
如何通过Java SDK分组检索Doc
java·数据库·面试
Olrookie5 小时前
XXL-JOB GLUE模式动态数据源实践:Spring AOP + MyBatis 解耦多库查询
java·数据库·spring boot
苏婳6665 小时前
【最新版】怎么下载mysqlclient并成功安装?
数据库·python·mysql
Tapdata7 小时前
《实时分析市场报告 2025》上线 | 从批处理到实时洞察,2025 年全球实时分析市场全景解读
数据库