2014-05-24 75 views
1

通過Django教程後,我試圖用MYSQL而不是SQLite啓動我自己的項目。我也改變了我的項目結構,我相信這是我遇到與進口衝突的地方。導入Django項目的設置

項目結構目前

moerepo 
    moesite 
     manage.py 
     moesite 
      __init__.py 
      urls.py 
      wsgi.py 
      settings 
       base.py 
       __init__.py 
       local.py 
       staging.py 
       test.py 
       production.py 

我的最終目標是目前已我的項目在當地與MySQL數據庫配置。不過,我遇到了導入基本設置以運行syncdb命令的問題。

當我運行python manage.py syncdb --settings = settings.base ...我收到下面的錯誤。

Traceback (most recent call last): 
File "manage.py", line 10, in <module> 
execute_from_command_line(sys.argv) 
File "/home/alpha/django-trunk/django/core/management/__init__.py", line 427, in execute_from_command_line 
utility.execute() 
File "/home/alpha/django-trunk/django/core/management/__init__.py", line 386, in execute 
settings.INSTALLED_APPS 
File "/home/alpha/django-trunk/django/conf/__init__.py", line 46, in __getattr__ 
self._setup(name) 
File "/home/alpha/django-trunk/django/conf/__init__.py", line 42, in _setup 
self._wrapped = Settings(settings_module) 
File "/home/alpha/django-trunk/django/conf/__init__.py", line 98, in __init__ 
% (self.SETTINGS_MODULE, e) 
ImportError: Could not import settings 'settings.base' (Is it on sys.path? Is there an import error in the settings file?): No module named settings.base 

我SYS路徑低於

/home/alpha/django-trunk 
/usr/lib/python2.7 
/usr/lib/python2.7/plat-linux2 
/usr/lib/python2.7/lib-tk 
/usr/lib/python2.7/lib-old 
/usr/lib/python2.7/lib-dynload 
/usr/local/lib/python2.7/dist-packages 
/usr/lib/python2.7/dist-packages 
/usr/lib/python2.7/dist-packages/PIL 
/usr/lib/python2.7/dist-packages/gst-0.10 
/usr/lib/python2.7/dist-packages/gtk-2.0 
/usr/lib/pymodules/python2.7 
/usr/lib/python2.7/dist-packages/ubuntu-sso-client 
/usr/lib/python2.7/dist-packages/ubuntuone-client 
/usr/lib/python2.7/dist-packages/ubuntuone-control-panel 
/usr/lib/python2.7/dist-packages/ubuntuone-couch 
/usr/lib/python2.7/dist-packages/ubuntuone-installer 
/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol 

顯然需要採取什麼是沒有,但我已經附加應該是什麼與此相應的目錄在我base.py

"""Path Configuration""" 
DJANGO_ROOT = dirname(dirname(abspath(__file__))) 
"""Site Name""" 
SITE_NAME = basename(DJANGO_ROOT) 

"""Abs filesystem path to the top-level project folder.""" 
SITE_ROOT = dirname(DJANGO_ROOT) 

"""Absolute filesystem path to the secret file which holds the SECRET_KEY. Will be 
auto generated the first time this file is interpreted""" 
SECRET_FILE = normpath(join(SITE_ROOT, 'deploy', 'SECRET')) 

"""Add all necessary filesystem paths to our system path so that we can use 
python import statements""" 
sys.path.append(SITE_ROOT) 
sys.path.append(normpath(join(DJANGO_ROOT, 'apps'))) 
sys.path.append(normpath(join(DJANGO_ROOT, 'libs'))) 

任何指導將不勝感激。如果我需要提供更具體的信息或者如果有不相關的信息,請告訴我,以便我可以在此處提供所有相關信息。

+0

嘗試'base.py'並不意味着直接使用類似像抽象類不能被實例化,但像'local','production'其他一些設置,而延長等等。所以,也許你應該嘗試其中之一,或者再次比較差異並追加應該附加到基本文件的內容。 – andi

+0

你的DATABASE部分的配置在哪裏?這是否合適? – andi

+0

如果可以的話,將你的項目推送到github,所以它會更容易幫助你,至少推送所有的配置文件。 – andi

回答

1

--settings=moesite.settings.base 
在大多數情況下
+0

gah那麼簡單。這讓我到了我想要的地方,但是我在基本設置文件中還有一些錯誤,我需要與之搏鬥。再次感謝!!! – MicahR