首页 > 数据库 >django 多数据库接入相关操作

django 多数据库接入相关操作

时间:2024-05-29 17:58:26浏览次数:18  
标签:菜单 接入 数据库 list MyORM ..... using django

多数据库注册

在配置文件中的 default 同级进行注册即可

DATABASES = {
    "default": {
      .....
    },
    "aaa": {
    .....
    },
    "bbb": {
    .....
    },
}

建立数据表模型

模型建立后做一些操作让使用更加便携, 其他使用此模型的时候正常  AaaTable.objects.using("aaa").all()  =简化为=>  AaaTable.objects.all() 

from django.db import models

from cibo.tools.my_orm import MyORM


class AAADBManager(models.Manager):
    def get_queryset(self):
        return super().get_queryset().using('aaa')


class AaaTable(models.Model):
  # 仅注册自己需要用的字段即可
    aa = MyORM.cf(64)
    bb = MyORM.cf(64)
    cc = MyORM.cf(128)
    dd = MyORM.cf(64)

  # 指定使用的数据库
    objects = AAADBManager()

    class Meta:
    # 取消对此数据表的托管
        managed = False
        db_table = 'table_name' # 指定数据表真实的表名

后台注册模型

需要指定 using 到具体的数据库

@admin.register(AaaTable)
class AaaTableAdmin(admin.ModelAdmin):
    # 注意此处需要指定数据库名字
    using = 'cost'
    list_display = (
        "id",
        "aa",
        "bb",
        "cc",
        "dd",
    )
    list_filter = ("aa", "bb", "cc", "dd")
    list_editable = ("cc",)
    list_per_page = 20
    list_max_show_all = 7
    ordering = ("id",)

simpleui 相关美化配置

 需要注意的是url的地方做处理即可

ADMIN_SIMPLEUI_CONFIG = {
    # 是否使用系统默认菜单,自定义菜单时建议关闭。
    'system_keep': True,
    # 设置是否开启动态菜单, 默认 False 如果开启, 则会在每次用户登陆时刷新展示菜单内容, 一般建议关闭.
    'dynamic': True,
    # 用于菜单排序和过滤, 不填此字段为默认排序和全部显示。空列表[] 为全部不显示.
    'menu_display': ['权限认证', '后台管理', 'OIDC管理', '用户信息', "配置管理"],
    'menus': [
        .....
        {
            'name': '配置管理',
            'icon': '',
            'models': [
          ......
                {
                    'name': '要展示的外部模型',
                    'url': '/admin/是哪个app就放哪个app没影响/table_name/',
                },
            ]
        },
    ]
}

 

标签:菜单,接入,数据库,list,MyORM,.....,using,django
From: https://www.cnblogs.com/shijieli/p/18220783

相关文章

  • 我的 Django 注册页面重定向不起作用
    我正试图为我的Django项目制作一个注册页面。当我编译注册表单时,它出现了图片中的错误,因为它试图转到以下路径(hedoublesusers/register):localhost/users/register/users/register/。我的代码如下:......
  • Oracle如何诊断远程访问数据库慢/超时等问题小结
    管理维护Oracle数据库的时候,有时候会碰到用户(应用程序)远程连接/访问数据库非常慢,甚至连接超时的问题。这里简单总结一下遇到这类问题的方法,仅供参考,如有疏漏或不足之处,敬请指正。文中部分内容来自官方文档DocID1679567.1[1]遇到这类问题,首先应该检查/排除网络问题,一般来说,有......
  • Labels and Databases for Mac( 数据库标签制作软件)1.8.0版
     LabelsandDatabasesforMac一款数据库标签制作和设计软件。LabelsandDatabases可以帮助您使用各种内置标签格式创建标签、信封和卡片,并使用用户数据库中包含的信息填充它们,即使用MailMerge创建和打印标签。LabelsandDatabasesforMac(数据库标签制作软件)软件......
  • Java语言,MySQL数据库;SSM 心理咨询预约管理系统19086(免费领源码)计算机毕业设计项目推荐
    目 录摘要1绪论1.1背景及意义1.2研究现状1.3ssm框架介绍1.4论文结构与章节安排2 心理咨询预约管理系统系统分析2.1可行性分析2.1.1技术可行性分析2.1.2经济可行性分析2.1.3法律可行性分析2.2系统功能分析2.2.1功能性分析2.2.2非功能......
  • python3.x中ORM框架SQLObject使用SQLite数据库随笔
    1、如果未安装SQLObject首先要安装,在管理员CMD下,输入如下命令:pipinstallsqlobject2、创建数据库文件,并建立数据库连接,通过修改SQLObject内置的sqlhub的processConnection属性,具体代码如下sqlobject.sqlhub.processConnection=sqlobject.connectionForURI('sqlite:.......
  • macos php 如何链接神通数据库aci
    环境:macosphp版本:7.4利用:docker我得先喷一下刚开始装的x86官网上下载的居然没有pdo扩展最后在网上找到了arm64的扩展简直了...1。编写dockerfileFROMbai615/arm64-php:7.4.33-fpmRUNsed-i's/deb.debian.org/mirrors.tuna.tsinghua.edu.cn/g'/etc/apt/sources.lis......
  • python社区宠物登记养宠交流系统vue+flask_django包调试pycharm
    有何创新之处(1)系统资源闭环整合,实现了综合功能高度集成。(2)采用DJANGO框架,开发软件更加方便、快捷、高效用户具体功能如下:1、社区管理员:注册、登录、个人信息管理、发帖管理、评论管理、宠物规范管理、社区用户管理、宠物类别管理、宠物信息管理(查询宠物信息,修改宠物信息,删......
  • Kettle 从数据库读取数据存到变量中
    布局图JobTransformationsTableinputSELECT'内容'ASINFOFROMDUAL;Setvariables ModifiedJavaScriptvalue Setvariables2 Reference:Kettle连接Oracle使用手册及问题解决方案 ......
  • (免费领源码)Java/Mysql数据库+01012大学生爱心互助代购网站,计算机毕业设计项目推荐上万
    摘 要在网络信息的时代,众多的软件被开发出来,给用户带来了很大的选择余地,而且人们越来越追求更个性的需求。在这种时代背景下,企业只能以用户为导向,按品种分类规划,以产品的持续创新作为企业最重要的竞争手段。系统采用了B/S结构,将所有业务模块采用以浏览器交互的模式,选择My......
  • (免费领源码)Java/Mysql数据库+00895springboot的校园二手书销售平台,计算机毕业设计项目
    本科学生毕业设计校园二手书销售平台设计与实现                院系名称:    计算机科学与技术学院    专业班级:                            学生姓名:                           ......