Django设置使用两个引擎配置数据库 [英] Django settings configure databases with two engines

查看:20
本文介绍了Django设置使用两个引擎配置数据库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用PostgreSQL和Postgis运行Django

对于Django&;PostgreSQL I配置setting.py文件如下

DATABASES = {
    'default': {
        'ENGINE':'django.db.backends.postgresql_psycopg2',
        'NAME': 'myDatabaseName',
        'USER': 'postgres',
        'PASSWORD': 'MyPassword',
        'HOST': '',
        'PORT': '5432',
    }
}

但查看Django geo示例的教程会显示如何使用这个

DATABASES = {
    'default': {
         'ENGINE': 'django.contrib.gis.db.backends.postgis',
         'NAME': 'geodjango',
         'USER': 'geo',
     }
}

问题:我需要两个引擎在同一个数据库上工作,因为我正在使用具有postgis扩展名的PostgreSQL,并且我想定义一个具有如下地理列的表:

MapLocation GEOGRAPHY(POINT)

并像这样引用Django中的maplocation = models.PointField()

显然我需要两个引擎的混合体,其余的就像上面在‘Default’中提到的那样,我只是不知道如何让它工作

推荐答案

在Django中,您可以定义多个数据库连接:

DATABASES = {
    'default': {
        'NAME': 'app_data',
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'USER': 'postgres_user',
        'PASSWORD': 's3krit'
    },
    'users': {
        'NAME': 'user_data',
        'ENGINE': 'django.db.backends.mysql',
        'USER': 'mysql_user',
        'PASSWORD': 'priv4te'
    }
}

引用:https://docs.djangoproject.com/en/dev/topics/db/multi-db/#defining-your-databases

这篇关于Django设置使用两个引擎配置数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆