2014-11-20 76 views
0

我設置了一個新的Django項目,並且遇到了可怕的'無法導入設置'錯誤。我之前已經設置了許多django項目,並且從未遇到過這個問題。與此不同的是它使用的是python3.4,django 1.7,它在虛擬機上(我的所有其他虛擬機都在< 1.7,python 2和物理主機上)。我用google搜索了很多,但沒有一個解決方案適用於我。django:無法導入settings.py

這是我得到的錯誤:

[email protected]:/vagrant/elex_apis$ python3 manage.py migrate 
Traceback (most recent call last): 
    File "/usr/local/lib/python3.4/dist-packages/django/conf/__init__.py", 
line 94, in __init__ 
    mod = importlib.import_module(self.SETTINGS_MODULE) 
    File "/usr/lib/python3.4/importlib/__init__.py", line 109, in import_module 
    return _bootstrap._gcd_import(name[level:], package, level) 
    File "<frozen importlib._bootstrap>", line 2231, in _gcd_import 
    File "<frozen importlib._bootstrap>", line 2214, in _find_and_load 
    File "<frozen importlib._bootstrap>", line 2189, in _find_and_load_unlocked 
    File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed 
    File "<frozen importlib._bootstrap>", line 2231, in _gcd_import 
    File "<frozen importlib._bootstrap>", line 2214, in _find_and_load 
    File "<frozen importlib._bootstrap>", line 2201, in _find_and_load_unlocked 
ImportError: No module named '/vagrant/elex_apis/elex_apis/settings' 

During handling of the above exception, another exception occurred: 

Traceback (most recent call last): 
    File "manage.py", line 10, in <module> 
    execute_from_command_line(sys.argv) 
    File "/usr/local/lib/python3.4/dist-packages/django/core/management/__init__.py", 
line 385, in execute_from_command_line 
    utility.execute() 
    File "/usr/local/lib/python3.4/dist-packages/django/core/management/__init__.py", 
line 345, in execute 
    settings.INSTALLED_APPS 
    File "/usr/local/lib/python3.4/dist-packages/django/conf/__init__.py", 
line 46, in __getattr__ 
    self._setup(name) 
    File "/usr/local/lib/python3.4/dist-packages/django/conf/__init__.py", 
line 42, in _setup 
    self._wrapped = Settings(settings_module) 
    File "/usr/local/lib/python3.4/dist-packages/django/conf/__init__.py", 
line 98, in __init__ 
    % (self.SETTINGS_MODULE, e) 
ImportError: Could not import settings 
'/vagrant/elex_apis/elex_apis/settings.py' (Is it on sys.path? Is 
there an import error in the settings file?): No module named 
'/vagrant/elex_apis/elex_apis/settings' 

我檢查了所有常見的東西(設置文件是存在的,這是 可讀的,我有一個初始化,PY文件,我wsgi.py好,我manage.py 好,我可以將其導入)

[email protected]:/vagrant/elex_apis$ python3 
Python 3.4.0 (default, Apr 11 2014, 13:05:11) 
[GCC 4.8.2] on linux 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import elex_apis.settings 
>>> 

任何援助將不勝感激。

+1

通常'No module named'異常不包含路徑,而是模塊名稱(帶點)。試着找出爲什麼你找到一條路徑,檢查你的環境。變量。 – Tzach 2014-11-20 23:28:32

+0

DJANGO_SETTINGS_MODULE正在設置爲路徑。我刪除了,現在它工作。謝謝! – 2014-11-20 23:32:43

+0

偉大:)發表回答 – Tzach 2014-11-20 23:35:28

回答

1

通常,No module named異常不包含路徑,而是模塊名稱(帶點)。試着弄清楚爲什麼你會找到一條路徑,檢查你的DJANGO_SETTINGS_MODULE環境變種。