Django and venv: settings.DATABASES is improperly configured. Please supply the ENGINE value
Question: This happens when I run python manage.py syncdb. It also happens when I run
python manage.py syncdb --mysite.settings. Not sure where to go from here:
django isn't recognizing my settings file and I don't know why or how to
rectify it.

    
    
    python ../manage.py syncdb
    Traceback (most recent call last):
      File "../manage.py", line 9, in <module>
        execute_from_command_line(sys.argv)
      File "/home/ryan/Programming/OpenCV-2.4.2/msheroku/venv/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 443, in execute_from_command_line
        utility.execute()
      File "/home/ryan/Programming/OpenCV-2.4.2/msheroku/venv/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 382, in execute
        self.fetch_command(subcommand).run_from_argv(self.argv)
      File "/home/ryan/Programming/OpenCV-2.4.2/msheroku/venv/local/lib/python2.7/site-packages/django/core/management/base.py", line 196, in run_from_argv
        self.execute(*args, **options.__dict__)
      File "/home/ryan/Programming/OpenCV-2.4.2/msheroku/venv/local/lib/python2.7/site-packages/django/core/management/base.py", line 232, in execute
        output = self.handle(*args, **options)
      File "/home/ryan/Programming/OpenCV-2.4.2/msheroku/venv/local/lib/python2.7/site-packages/django/core/management/base.py", line 371, in handle
        return self.handle_noargs(**options)
      File "/home/ryan/Programming/OpenCV-2.4.2/msheroku/venv/local/lib/python2.7/site-packages/django/core/management/commands/syncdb.py", line 57, in handle_noargs
        cursor = connection.cursor()
      File "/home/ryan/Programming/OpenCV-2.4.2/msheroku/venv/local/lib/python2.7/site-packages/django/db/backends/dummy/base.py", line 15, in complain
        raise ImproperlyConfigured("settings.DATABASES is improperly configured. "
    django.core.exceptions.ImproperlyConfigured: settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details.
    

From settings.py

    
    
    DATABASES = { 
        'default': {
            'ENGINE': 'postgresql_psycopg2', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
            'NAME': 'xxx',                      # Or path to database file if using sqlite3.
            'USER': 'xxx',                      # Not used with sqlite3.
            'PASSWORD': 'xxx',                  # Not used with sqlite3.
            'HOST': '',                      # Set to empty string for localhost. Not used with sqlite3.
            'PORT': '',                      # Set to empty string for default. Not used with sqlite3.
        }   
    }
    

I'm pretty confident that it's not finding the right settings file to begin
with.


Answer: Hi I am assuming you are testing your app using heroku and your trying to
connect to your local database ? if so be sure to remove this line of code :

    
    
    # Parse database configuration from $DATABASE_URL
      import dj_database_url
      DATABASES['default'] =  dj_database_url.config()
    
    # Honor the 'X-Forwarded-Proto' header for request.is_secure()
      SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
    

Add it in when you are gonna connect to a database on a anther server.

