一、在settings.py配置多个数据库
DATAbaseS = { 'default1': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'choice', 'USER': 'ad_user', 'PASSWORD': 'ad_pass', 'HOST': '127.0.0.1', 'PORT': '3306', 'SIZE': '10', }, 'default2': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'test', 'USER': 'ad_user', 'PASSWORD': 'ad_pass', 'HOST': '192.168.10.179', 'PORT': '3306', 'SIZE': '10', } }
二、创建数据库路由
在settings目录同级下新建一个database_router.py文件 。
如果自定义database_router.py所在的目录,需要设置以下文件,否则不需要。
#在settings.py中自定义 DATAbase_ROUTERS = ('app.dbrouters.MyDBRouter',)
database_router.py
class MyDBRouter(object): def db_for_read(self, model, **hints): if model.__module__=="customer.models": #customer.models = 应用名.文件名 return 'default2' else: return 'default1' def db_for_write(self, model, **hints): if model.__module__=="customer.models": return 'default2' else: return 'default1'
三、使用在同一个views中使用不同的models
from . import models as m_1 #models是应用目录下的文件名 from . import models_2 as m_2 #models_2是应用目录下的文件名
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)