在Django Shell中连接到其他数据库

安舒尔·戈亚尔(Anshul Goyal)

在Django Shell中,如何连接到其他数据库?

就像是:

python manage.py shell --database=slave

我尝试了四处搜寻,但找不到任何有用的方法。

这是我的设置:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'db1',
        'USER': 'user',
        'PASSWORD': 'password',
        'HOST': '10.10.10.10',
        'PORT': '',
        'CONN_MAX_AGE': 1000,
    },
    'slave':{
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'db2',
        'USER': 'user',
        'PASSWORD': 'password',
        'HOST': '10.10.10.10',
        'PORT': '',
        'CONN_MAX_AGE': 1000,
    },
}
安托万·平沙德(Antoine Pinsard)

您可以将设置模块拆分为子模块。例如:

project/
    settings/
        __init__.py
        base.py
        dev.py
        prod.py
        shell.py

您的主要/常用设置位于 project/settings/base.py

在开发中,将DJANGO_SETTINGS_MODULE环境变量设置project.settings.dev

project/settings/dev.py 可能看起来像:

from .base import *

DEBUG = True

project/settings/shell.py 可能看起来像:

from .dev import *

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'db2',
        'USER': 'user',
        'PASSWORD': 'password',
        'HOST': '10.10.10.10',
        'PORT': '',
        'CONN_MAX_AGE': 1000,
    },
}

# OR
#
# DATABASES['master'] = DATABASES['default']
# DATABASES['default'] = DATABASES['slave']

然后运行python manage.py shell --settings=project.settings.shell


或者,或者,仅创建第二个设置模块:

project/
    settings.py
    shell_settings.py

project/shell_settings.py 看起来像:

from .settings import *

DATABASES['master'] = DATABASES['default']
DATABASES['default'] = DATABASES['slave']

并运行 python manage.py shell --settings=project.shell_settings

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Django Shell中连接到其他数据库

来自分类Dev

Django中的其他非模型数据库连接

来自分类Dev

如何将EC2中的Django连接到RDS中的Postgres数据库?

来自分类Dev

如何从Django连接到mysql数据库?

来自分类Dev

从Django应用docker连接到本地mysql数据库

来自分类Dev

允许用户将其数据库连接到Django应用

来自分类Dev

无法使用Django连接到Firebird数据库

来自分类Dev

将Django连接到Microsoft SQL数据库

来自分类Dev

在AWS上为Django设置并连接到数据库

来自分类Dev

连接到 Django 测试数据库

来自分类Dev

Django migrate 尝试连接到非默认数据库

来自分类Dev

在 Django 中的数据库中查找电话号码后添加其他字段

来自分类Dev

django makemigrations用于未配置的其他数据库

来自分类Dev

Django无法在“默认”以外的其他数据库中创建超级用户

来自分类Dev

从Django中的失效数据库连接中恢复

来自分类Dev

从Django中的失效数据库连接中恢复

来自分类Dev

在Django中创建只读MySQL数据库连接

来自分类Dev

如何在 django 1.10.6 中连接 MySQL 数据库

来自分类Dev

如何在Django中通过ID搜索查询集而无需其他数据库调用

来自分类Dev

bucardo无法连接到其他数据库

来自分类Dev

bucardo无法连接到其他数据库

来自分类Dev

MYSQL 数据库连接到其他网站

来自分类Dev

如何使用cx_oracle django程序包连接到oracle旧数据库?

来自分类Dev

如何从Linux VM上的Django应用连接到Azure SQL数据库

来自分类Dev

如何将外部Postgresql数据库连接到Django Rest

来自分类Dev

无法从我的Django Web应用程序连接到Amazon RDS Postgres数据库

来自分类Dev

升级到django 3.1后无法连接到测试数据库

来自分类Dev

防止Django创建表-连接到现有数据库

来自分类Dev

使用 Workbench 将 Django 连接到远程 MySQL 数据库

Related 相关文章

  1. 1

    在Django Shell中连接到其他数据库

  2. 2

    Django中的其他非模型数据库连接

  3. 3

    如何将EC2中的Django连接到RDS中的Postgres数据库?

  4. 4

    如何从Django连接到mysql数据库?

  5. 5

    从Django应用docker连接到本地mysql数据库

  6. 6

    允许用户将其数据库连接到Django应用

  7. 7

    无法使用Django连接到Firebird数据库

  8. 8

    将Django连接到Microsoft SQL数据库

  9. 9

    在AWS上为Django设置并连接到数据库

  10. 10

    连接到 Django 测试数据库

  11. 11

    Django migrate 尝试连接到非默认数据库

  12. 12

    在 Django 中的数据库中查找电话号码后添加其他字段

  13. 13

    django makemigrations用于未配置的其他数据库

  14. 14

    Django无法在“默认”以外的其他数据库中创建超级用户

  15. 15

    从Django中的失效数据库连接中恢复

  16. 16

    从Django中的失效数据库连接中恢复

  17. 17

    在Django中创建只读MySQL数据库连接

  18. 18

    如何在 django 1.10.6 中连接 MySQL 数据库

  19. 19

    如何在Django中通过ID搜索查询集而无需其他数据库调用

  20. 20

    bucardo无法连接到其他数据库

  21. 21

    bucardo无法连接到其他数据库

  22. 22

    MYSQL 数据库连接到其他网站

  23. 23

    如何使用cx_oracle django程序包连接到oracle旧数据库?

  24. 24

    如何从Linux VM上的Django应用连接到Azure SQL数据库

  25. 25

    如何将外部Postgresql数据库连接到Django Rest

  26. 26

    无法从我的Django Web应用程序连接到Amazon RDS Postgres数据库

  27. 27

    升级到django 3.1后无法连接到测试数据库

  28. 28

    防止Django创建表-连接到现有数据库

  29. 29

    使用 Workbench 将 Django 连接到远程 MySQL 数据库

热门标签

归档