我正在创建一个django Web应用程序,我需要同时使用mysql和mongodb。
因此我使用了mongoengine:
mongoengine.connect("mongodb://username:password@localhost:27017/dbname")
在我的django / settings.py中:
DATABASES = {
'default':
'ENGINE': "django.db.backends.mysql",
'NAME': "dbname",
"USER": "username",
"PASSWORD": "password",
"HOST": "localhost",
"PORT": "3306",
}
如何在此处为MongoDB配置另一个连接并使用它在routers.py
中返回
我正在使用Django 1.8,因此我无法使用django-norel/django-mongodb-engine
。
答案 0 :(得分:-1)
DATABASES = {
'default': {
"ENGINE": "django.db.backends.mysql",
"NAME": "dbname",
"USER": "username",
"PASSWORD": "password",
"HOST": "localhost",
"PORT": "3306",
},
'users': {
'NAME': 'user_data',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': 'priv4te'
}
}
migrate management命令一次只能在一个数据库上运行。默认情况下,它在默认数据库上运行,但通过提供a --database
参数,您可以告诉migrate同步另一个数据库。因此,要将所有模型同步到所有数据库,您需要调用:
$ ./manage.py migrate
$ ./manage.py migrate --database=users
我希望它有所帮助。