Django 多数据库

django 支持项目连接多个数据库

python 复制代码
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'xxx',
        'USER': 'root',
        "PASSWORD": 'xxxxx',
        'HOST': 'xxxx',
        'PORT': '3306',
    },
    'bak': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'xxx',
        'USER': 'root',
        "PASSWORD": 'xxxx',
        'HOST': 'xxxxx',
        'PORT': '3306',
    }
}

1.读写分离

192.3.2.1 数据库名 【写】

数据同步需要mysql自己解决 后端开发不用管

192.3.2.2 数据库名 【读】

  • 生成数据库表

python manage.py makemigrations

python manage.py migrate --database==default

  • 后续再进行开发时

models.UserInfo.objects.using("default").create(title='xxxx') 【写】

models.UserInfo.objects.using("bak").all() 【读】

编写router类,简化【后续再进行开发时】

python 复制代码
class DemoRouter:

    def db_for_read(self, model, **hints):
        print("model._meta")
        return "bak"

    def db_for_write(self, model, **hints):

        return "default"
相关推荐
呱呱复呱呱3 天前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
码云骑士9 天前
31-慢查询排查全流程(上)-Django-Debug-Toolbar与EXPLAIN入门
后端·python·django
龙腾AI白云9 天前
数字孪生和世界模型,二者的技术边界正在慢慢融合吗?
人工智能·django·知识图谱
码云骑士9 天前
30-在线图书管理系统-Django从零搭建到上线部署完整实战
后端·python·django
2601_9618752410 天前
花生十三资源盘|电子版|全科
python·django·flask·virtualenv·scikit-learn·pygame·tornado
码云骑士10 天前
28-Docker部署Django(下)-docker-compose编排与静态文件处理
docker·容器·django
码云骑士10 天前
23-Django-ORM的N+1问题-select_related与prefetch_related详解
后端·python·django
摸摸芋10 天前
Django框架(1)
后端·python·django
码云骑士10 天前
27-Docker部署Django(上)-从2GB到180MB的镜像瘦身实战
docker·容器·django
杰杰79810 天前
DRF的分页讲解-入门篇 三个基础分页类介绍
python·django