Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Django always connects to localhost mongodb

Tags:

django

djongo

I have followed the guide of db connection config: https://nesdis.github.io/djongo/database-configuration/

However, it always connects to localhost one, not my setting's one.

Does anyone have any idea on this issue?

my packages versions:

Django  2.0
django-cors-headers 2.4.0   
django-rest-auth    0.9.3   
djangorestframework 3.9.0   
djongo  1.1 
mongoengine 0.16.3  
pip 10.0.1  
pymongo 3.7.2   
urllib3 1.24.1  

my settings

DATABASES = {
    'default': {
        'ENGINE': 'djongo',
        'NAME': 'test_db',
        'HOST': 'somewhere.com',
        'PORT': 27017
    }
}
like image 361
Louis Luk Avatar asked Dec 31 '25 01:12

Louis Luk


1 Answers

Is seems that somewhere along the way, djongo changed the structure of the database settings. After wasting days trying to find the solution, I came across a page that had the updated structure, Try setting your DATABASE structure to this:

DATABASES = {
  'default': {  
    'ENGINE':   'djongo',
    'NAME':     'yourmongodb',
    'CLIENT': {
      'host': 'some-host.or.ip',
      'port': 27017,
      'username': 'youruser',
      'password': 'yourdbpass',
      'authSource': 'yourcollection',
    }
  },
}
like image 93
Dave Seff Avatar answered Jan 01 '26 17:01

Dave Seff