2012-12-08 9 views
7

मैंने हाल ही में Django-1.5b1 स्थापित किया है। मेरे सिस्टम विन्यास:Django 1.5b1: django-admin.py निष्पादित करता है "सेटिंग्स नामित कोई मॉड्यूल नहीं" त्रुटि

  • OSX 10.8
  • अजगर 2.7.1
  • virtualenv 1.7.2

जब मैं फोन django-admin.py आदेश मैं निम्नलिखित त्रुटि मिलती है

(devel)ninja Django-1.5b1: django-admin.py 
Usage: django-admin.py subcommand [options] [args] 

Options: 
    -v VERBOSITY, --verbosity=VERBOSITY 
         Verbosity level; 0=minimal output, 1=normal output, 
         2=verbose output, 3=very verbose output 
    --settings=SETTINGS The Python path to a settings module, e.g. 
         "myproject.settings.main". If this isn't provided, the 
         DJANGO_SETTINGS_MODULE environment variable will be 
         used. 
    --pythonpath=PYTHONPATH 
         A directory to add to the Python path, e.g. 
         "/home/djangoprojects/myproject". 
    --traceback   Print traceback on exception 
    --version    show program's version number and exit 
    -h, --help   show this help message and exit 
Traceback (most recent call last): 
    File "/Users/sultan/.virtualenvs/devel/bin/django-admin.py", line 5, in <module> 
    management.execute_from_command_line() 
    File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/core/management/__init__.py", line 452, in execute_from_command_line 
    utility.execute() 
    File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/core/management/__init__.py", line 375, in execute 
    sys.stdout.write(self.main_help_text() + '\n') 
    File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/core/management/__init__.py", line 241, in main_help_text 
    for name, app in six.iteritems(get_commands()): 
    File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/core/management/__init__.py", line 108, in get_commands 
    apps = settings.INSTALLED_APPS 
    File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/conf/__init__.py", line 52, in __getattr__ 
    self._setup(name) 
    File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/conf/__init__.py", line 47, in _setup 
    self._wrapped = Settings(settings_module) 
    File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/conf/__init__.py", line 132, in __init__ 
    raise ImportError("Could not import settings '%s' (Is it on sys.path?): %s" % (self.SETTINGS_MODULE, e)) 
ImportError: Could not import settings 'settings' (Is it on sys.path?): No module named settings 

क्या किसी को भी एक ही त्रुटि है? क्या कोई सलाह दे सकता है या इसमें मदद कर सकता है?

धन्यवाद,

सुल्तान

+0

मैं Django 1.4.2 और Django 1.3.4 स्थापित करने की कोशिश की और सबकुछ ठीक काम करता है – sultan

उत्तर

23

एक नई परियोजना शुरू करते समय मुझे एक ही समस्या थी। मैं कमांड प्रॉम्प्ट पर इस आदेश देकर समस्या हल:

export DJANGO_SETTINGS_MODULE= 
इस तरह से मैं चर है कि एक " settings" फ़ाइल ( env | grep DJANGO_SETTINGS_MODULE का उपयोग कर पता चला) की ओर इशारा करते था अनसेट में

मैं का उपयोग कर virtualenv शुरू करने से पहले सेट

वैरिएबल को अनसेट करने के बाद django-admin.py स्क्रिप्ट एक आकर्षण की तरह काम किया!

आसान समाधान के लिए
+0

पर काम नहीं करती है, यह मेरे लिए भी काम करता है – sultan

+0

यह सबसे अच्छा समाधान नहीं है, आपको पाइथनपैथ शामिल करना चाहिए, जैसे @ सोलवल्फ उत्तर सुझाया गया है: http: // stackoverflow.com/a/14995603/778261 – neosergio

+0

धन्यवाद @neosergio। क्या आप कृपया विस्तार से बता सकते हैं कि यह सबसे अच्छा समाधान क्यों होना चाहिए? सुल्तान के पास DJANGO_SETTINGS_MODULE में एक गलत मूल्य था और मेरा सुझाव वर्चुअलएन्ग के उपयोग के लिए उस मान को हटाना था। – furins

-1

क्या आप वाकई virtualenv Django instalation से Django-व्यवस्थापक शुरू कर रहे हैं कर रहे हैं? शायद path/to/virtualenv/bin/django-admin.py

+0

हां मैं हूं, कमांड ** जो django-admin.py ** दिखाता है **/उपयोगकर्ता/सुल्तान /। virtualenvs/devel/bin/django-admin.py ** – sultan

+1

हाँ क्षमा करें, बस देखा उस। वह अन्य कारण यह है कि django अजगर पथ पर नहीं है। मुझे नहीं पता कि चुड़ैल पायथन मुख्य प्रणाली या वर्चुअल एनवी पायथन शुरू कर रहा है। लेकिन पथों में कुछ गड़बड़ है .... – krasi

0

हो सकता है कि आपकी समस्या को इस से संबंधित है: Wrong python path in script header

आप अपने venv के भीतर एक नया Django परियोजना बनाने के अलावा कुछ करना चाहते हैं, तो आप चाहिए कॉल करें python manage.py (बेशक, whereis python को अपना venv निष्पादन योग्य वापस करना चाहिए)

0

स्क्रिप्ट को django लाइब्रेरी के सीधे पथ से न चलाएं; इसे किसी अन्य पथ से चलाएं। ऐसा लगता है कि आप cd निर्देशिका में जहां django स्थापित है (या जहां आपने इसे डाउनलोड किया और विस्तार किया) और फिर वहां से कमांड चलाया।

तो यह प्रयास करें:

(devel)ninja Django-1.5b1: cd 
(devel)ninja: django-admin.py startproject foo 
+0

वही बात होती है, यह – sultan

5

मैं आप के रूप में एक ही मुद्दा मिला है, और मैं नहीं इस तरह PYTHONPATH करने के लिए अपने प्रोजेक्ट फ़ोल्डर prepending से अलग एक अच्छा ठीक के साथ आए हैं:

export PYTHONPATH="/absolute/path/to/django/project/folder:$PYTHONPATH" 

जहां मेरा <project>/absolute/path/to/django/project/folder/<project> पर स्थित है। मैं export कमांड को env/bin/activate स्क्रिप्ट के अंत में जोड़ता हूं, इसलिए जब भी मैं वर्चुअलएन्व प्रारंभ करता हूं तो ऐसा होता है।

हमारी दो स्थितियों के बीच एकमात्र अंतर यह है कि मैं एक settings.py मॉड्यूल के बजाय एकाधिक सेटिंग्स फ़ाइलों का उपयोग करता हूं।

तुम भी तो की तरह अपने Django परियोजना वाले फ़ोल्डर से django-admin.py कॉल कर सकते हैं:

python ~/.virtualenvs/devel/bin/django-admin.py <command> 

इतना है कि यह पथ के भाग के रूप में अपने वर्तमान कार्यशील निर्देशिका को पहचानता है।

आशा है कि यह समझ में आता है। यह समझाने के लिए बेकार है कि एक जवाब खोजने में मुश्किल होती है।

-1

आप

अजगर की कोशिश कर सकते हैं। \ स्क्रिप्ट \ django-admin.py startproject ProjectName

के बाद कि चलाने

संबंधित मुद्दे