2

Ich installierte und konfigurierte eine Django/MongoDB wie diese Weise!Fehler war: Kein Modul namens django_mongodb_engine.base

installieren pip virtualenv

Quelle myproject/bin/aktivieren

hg + https installieren Pip: //bitbucket.org/wkornewald/django-nonrel

hg + https installieren Pip: //bitbucket.org/wkornewald/djangotoolbox

pip git + https installieren: //github.com/django-nonrel/mongodb-engine

Alle diese Operationen sind erfolgreich!

jetzt, wenn ich die Datei settings.py wie auf diese Weise geändert:

DATABASES = { 
    'default': { 
     'ENGINE': 'django_mongodb_engine', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. 
     'NAME': 'mong_db',      # Or path to database file if using sqlite3. 
     'USER': '',      # Not used with sqlite3. 
     'PASSWORD': '',     # 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. 
    } 

Der knifflige Fehler tritt auf:

Error was: No module named django_mongodb_engine.base 

Offensichtlich die django_mongodb_engine erfolgreich installiert. aber warum wird dieser Fehler angezeigt?

BTW, Verzeihen Sie mein schlechtes Englisch!

Antwort

1

ging ich durch die gleichen Schritte, die Sie tat, öffnete dann eine Python-Shell:

$ python 
>>> import django_mongodb_engine.base 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/Users/emptysquare/.virtualenvs/foo/lib/python2.7/site-packages/django_mongodb_engine/base.py", line 4, in <module> 
    from django.db.backends.signals import connection_created 
    File "/Users/emptysquare/.virtualenvs/foo/lib/python2.7/site-packages/django/db/__init__.py", line 14, in <module> 
    if not settings.DATABASES: 
    File "/Users/emptysquare/.virtualenvs/foo/lib/python2.7/site-packages/django/utils/functional.py", line 276, in __getattr__ 
    self._setup() 
    File "/Users/emptysquare/.virtualenvs/foo/lib/python2.7/site-packages/django/conf/__init__.py", line 40, in _setup 
    raise ImportError("Settings cannot be imported, because environment variable %s is undefined." % ENVIRONMENT_VARIABLE) 
ImportError: Settings cannot be imported, because environment variable DJANGO_SETTINGS_MODULE is undefined. 

Aber wenn ich tun:

$ DJANGO_SETTINGS_MODULE=settings python 
>>> import django_mongodb_engine.base 

... es funktioniert.

Können Sie DJANGO_SETTINGS_MODULE einstellen und versuchen, django_mongodb_engine.base in der Python-Shell zu importieren?