2016-03-31 8 views
2

In meiner Datei Django App tests.py, importiere ich ein anderes Modul namens helpers. helpers befindet sich auf derselben Verzeichnisebene wie tests.py. Als ich ./manage.py tests betreibe ich diesen Fehler:Proper Weg zum Einrichten PYTHONPATH für Django-Projekt

$ ./manage.py test 
Creating test database for alias 'default'... 
E 
====================================================================== 
ERROR: api.tests (unittest.loader.ModuleImportFailure) 
---------------------------------------------------------------------- 
Traceback (most recent call last): 
    File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/unittest/case.py", line 58, in testPartExecutor 
    yield 
    File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/unittest/case.py", line 577, in run 
    testMethod() 
    File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/unittest/loader.py", line 32, in testFailure 
    raise exception 
ImportError: Failed to import test module: api.tests 
Traceback (most recent call last): 
    File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/unittest/loader.py", line 312, in _find_tests 
    module = self._get_module_from_name(name) 
    File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/unittest/loader.py", line 290, in _get_module_from_name 
    __import__(name) 
    File "/Users/bli1/Development/projects/cherngloong/cherngloong/api/tests.py", line 8, in <module> 
    from helpers.APIHelpers import KeyGrabber 
ImportError: No module named 'helpers' 

Hier mein Projektstruktur ist:

enter image description here

Grundsätzlich kann tests.py nicht das helpers Modul finden. Ich bin nicht sicher, was der beste/die richtige/Standard Weg, um dieses Problem in einem django Projekt

+1

haben Sie versucht von api.helpers.APIHelper KeyGrabber zu importieren? Beachten Sie den Namen App zuerst. – jorlugaqui

+0

@jorlugaqui das hat funktioniert! Vielen Dank! – Liondancer

+0

Können Sie bitte meine Antwort als akzeptiert markieren :)? – jorlugaqui

Antwort

2

Versuche, dies zu vermeiden:

Pakete
api.helpers.APIHelpers import KeyGrabber 

in Django oft mit den App-Namen starten. Sie können auch versuchen, relative imports.

Verwandte Themen