I have 2 databases mysql and mongo. On mysql people hold all data and on mongo just images. I have defined them like this
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': '*****',
'USER': '*****',
'PASSWORD': '*****',
'HOST': '1*****',
'PORT': '1*****',
'TEST': {
'NAME': '*****',
# 'CHARSET': 'utf8',
},
'mongodb': {
'ENGINE': 'djongo',
'NAME': '*****',
'USER': '*****',
'PASSWORD': '*****',
'HOST': '*****',
'PORT': '*****',
'TEST': {
'NAME': '*****',
# 'CHARSET': 'utf8',
},
}
}
}
Now I want to run inspectdb on mongodb and I het this error
manage.py inspectdb --database mongodb
django.db.utils.ConnectionDoesNotExist: The connection mongodb doesn't exist
The host password port is ok
You wrote mongodb at the same level as 'TEST', etc. This thus means that you only defined one database, and that mongodb is a key of that dictionary.
You thus should specify the mongodb database at the same level like the default database:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': '*****',
'USER': '*****',
'PASSWORD': '*****',
'HOST': '1*****',
'PORT': '1*****',
'TEST': {
'NAME': '*****',
# 'CHARSET': 'utf8',
}
},
'mongodb': {
'ENGINE': 'djongo',
'NAME': '*****',
'USER': '*****',
'PASSWORD': '*****',
'HOST': '*****',
'PORT': '*****',
'TEST': {
'NAME': '*****',
# 'CHARSET': 'utf8',
},
}
}