django import error - core.management नाम का कोई मॉड्यूल नहीं


187

ठीक है, मैं इन त्रुटियों के आसपास बहुत कुछ देखता हूं। मैंने वह सब करने की कोशिश की है जो मैं करना जानता हूं और अभी तक यह पता लगाना है।

मैं एक विकास सर्वर पर काम कर रहा हूं जो अजगर 2.5 और Django 1.3 चला रहा है। Django 1.3 को tar.gz डाउनलोड को अनपैक करने के बाद अजगर setup.py स्थापित का उपयोग करके स्थापित किया गया था।

सभी अच्छी तरह से काम करते हैं, मुझे शायद ही कभी चलाने की आवश्यकता है manage.pyलेकिन मैं नए स्टेटिकफाइल्स ऐप का उपयोग करने की कोशिश कर रहा हूं और समस्याओं में भाग रहा हूं।

python manage.py collectstatic
Traceback (most recent call last):
  File "manage.py", line 2, in <module>
    from django.core.management import execute_manager
ImportError: No module named core.management

ठीक है, इसलिए मेरे पास PATHमुद्दा है।

Django से मैं अपनी site-packagesनिर्देशिका की दोहरी जांच करता हूं ।

python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
/usr/lib/python2.5/site-packages

ठीक है, आइए देखें कि मेरे पास क्या है, गूंज $ PYTHON_PATH खाली था, इसलिए मैंने इसे सेट किया

export PYTHON_PATH=/usr/lib/python2.5/site-packages/django

फिर भी नसीब नहीं। आइए देखें कि sys.path का क्या कहना है

>>> import sys
>>> print sys.path
['', '/usr/lib/python2.5', '/usr/lib/python2.5/plat-linux2', '/usr/lib/python2.5/lib-tk', '/usr/lib/python2.5/lib-dynload', '/usr/local/lib/python2.5/site-packages', '/usr/lib/python2.5/site-packages', '/usr/lib/python2.5/site-packages/PIL', '/usr/lib/python2.5/site-packages/django', '/var/lib/python-support/python2.5']

रास्ता है, मैंने भी सामग्री के साथ /usr/lib/python2.5/site-packages/django.pp बनाया

cat /usr/lib/python2.5/site-packages/django.pth 
/usr/lib/python2.5/site-packages/django/

किसी को भी सुराग मिला कि यहां क्या चल रहा है?

मुझे एक सिमिलिंक मिला जो आगे रास्ते में मिल रहा था, लेकिन एक नई त्रुटि पर नहीं।

python manage.py collectstatic
Traceback (most recent call last):
  File "manage.py", line 14, in <module>
    execute_manager(settings)
  File "/usr/lib/python2.5/site-packages/django/core/management/__init__.py", line 438, in execute_manager
    utility.execute()
  File "/usr/lib/python2.5/site-packages/django/core/management/__init__.py", line 349, in execute
    version=get_version(),
  File "/usr/lib/python2.5/site-packages/django/__init__.py", line 12, in get_version
    from django.utils.version import get_svn_revision
ImportError: No module named utils.version

मैंने यह भी देखने के लिए एक नई परियोजना बनाने की कोशिश की कि क्या वहाँ कोई समस्या थी और उसी बर्तन को प्राप्त करें। त्रुटि।

साइड नोड: #django से अनोड ने मेरी थोड़ी मदद की, उसी मशीन पर वर्चुअनव की स्थापना की और त्रुटियों को पिछले कर दिया ताकि अभी भी यह सुनिश्चित न हो कि इस वास्तविक इंस्टॉल के साथ क्या हो रहा है, लेकिन ऐसा लगता है कि यह django प्रोजेक्ट्स में नहीं है, लेकिन django में / अजगर स्थापित करें।


1
जब आप import djangoअजगर के खोल में टाइप करते हैं तो क्या होता है ?
मौन

@ sil1mezzo - आह, यह भूल गए कि आयात में अजगर खोल से कोई शिकायत नहीं django
19:11 बजे अनुदान

1
भागा है क्या python manage.py syncdb?
मौन

@silentmezzo - इस मशीन पर नहीं, परियोजना को आगे बढ़ाने से पहले मेरी व्यक्तिगत मशीन पर ऐसा किया।
अनुदान

पहले इसे चलाने का प्रयास करें। यह कभी-कभी त्रुटि का कारण बन सकता है।
मौन

जवाबों:


169

अगर, मेरी तरह, आप अपने django को virtualenv में चला रहे हैं, और यह त्रुटि हो रही है, तो अपने को देखें manage.py। पहली पंक्ति को स्क्रिप्ट चलाने के लिए उपयोग किए जाने वाले अजगर को परिभाषित करना चाहिए। यह आपके virtualenv के अजगर के लिए रास्ता होना चाहिए, लेकिन यह कुछ गलत है जैसे / usr / bin / python, जो कि एक ही रास्ता नहीं है और वैश्विक अजगर पर्यावरण का उपयोग करेगा (और पैकेज गायब होंगे)। बस अपने वर्चस्व में निष्पादन योग्य पथ को पथ में बदलें।

आप अपनी शेलबैंग लाइन को भी बदल सकते हैं #!/usr/bin/env python। यह उचित अजगर पर्यावरण और दुभाषिया का उपयोग करना चाहिए बशर्ते कि आप अपने virtualenv को पहले सक्रिय करें (मुझे लगता है कि आप जानते हैं कि कैसे करना है)।


27
या रन की तरह<path-to-my-env>/bin/python manage.py runserver
geekQ

अच्छी तरह से देखा गया! ठीक यही समस्या थी!
kstratis

7
इसके अलावा, एर ... virtualenv को सक्रिय करने के लिए याद रखें। डी 'ओह!
एलेक्स मैकप

वैसे भी आप अपने virtualenv में अपने अजगर के निष्पादन योग्य मार्ग का एक उदाहरण प्रदान कर सकते हैं। उदाहरण के लिए मेरे वर्चुअल एनवी के लिए मेरा रास्ता / उपयोगकर्ता / क्रिस / virtualenv / my_first_venv है और मैंने पहली पंक्ति # / / उपयोगकर्ता / क्रिस / virtualenv / my_first_venv / बनाई है, लेकिन मुझे अभी भी वही त्रुटि मिली है। मुझे लगता है कि मैं शेबंग के साथ कुछ गलत कर सकता हूं ...
क्रिस

आप पथ के अंत में अजगर निष्पादन योग्य जोड़ना भूल गए होंगे: #!/Users/Chris/virtualenv/my_first_venv/bin/pythonया इसके साथ कुछ?
स्टीव के

40

यदि आप एक virtualenv में हैं, तो आपको इसे चलाने से पहले इसे सक्रिय करना होगा ।/manage.py 'कमांड'

source path/to/your/virtualenv/bin/activate

यदि आप .bash_profile या .bashrc में वर्कऑन को कॉन्फ़िगर करते हैं

workon yourvirtualenvname

* कृपया अपनी प्रबंधित करें फ़ाइल को संपादित न करें, हो सकता है कि सही तरीके से काम न करे और आपको भविष्य में त्रुटियां दे सकता है


यह मेरे लिए भी किया था आधी रात को जलाने के बाद यह काम करने के लिए संघर्ष कर रहा था। बहुत बहुत धन्यवाद @ elin3t
यक्ष

30

मुझे एक ही समस्या थी क्योंकि मैं Django को एक सुपर उपयोगकर्ता के रूप में स्थापित कर रहा था, इस प्रकार मेरे virtualenv में नहीं। आपको नहीं करना चाहिएsudo pip install Django

इसके बजाय, इसे इस तरह स्थापित करें:

$ source ./bin/activate
$ pip install Django

लेकिन सूडो के बिना आपको मिलता है: OSError: [Errno 13] अनुमति से इनकार: '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib-python2.7/site-packages/django'
malhal

15

कृपया, पाइप से django को पुनर्स्थापित करें:

sudo pip install --upgrade django==1.3

(अपने django संस्करण के लिए 1.3 बदलें)


25
सिफारिश नहीं की गई। sudoसिस्टम निर्देशिकाओं में स्थापित करने के लिए उपयोग करने से देशी पैकेजों में हस्तक्षेप होगा और संभवत: आपके पायथन इंस्टाल के कुछ हिस्सों को तोड़ देगा। मैं virtualenv की सिफारिश करेंगे।
नौफल इब्राहिम

11

जैसा कि ज्ञात था कि यह एक पथ मुद्दा था।

मेरे कस्टम पैकेजों के आधार ने / etc / प्रोफाइल में एक डायरेक्टरी सेट के साथ एक नाम साझा किया। पैकेज वेबसर्वर के लिए एक अलग स्थान पर थे। इसलिए मैंने अपने $ PYTHONPATH से आपत्तिजनक प्रविष्टियों को हटा दिया और जाने के लिए अच्छा था!

सहायता के लिए धन्यवाद।


10

इस समस्या का एक अन्य संभावित कारण यह है कि आपका OS डिफ़ॉल्ट रूप से python3 चलाता है।

या तो आपको स्पष्ट रूप से करना होगा: python2 manage.py

या आपको इस manage.pyतरह के शेबंग को संपादित करने की आवश्यकता है :

#!/usr/bin/env python2

या यदि आप python3 का उपयोग कर रहे हैं:

#!/usr/bin/env python3

मेरे लिए, मुझे करना था#!/usr/bin/env python2.7
विक

8

एक पर एक एम्बेडेड सिस्टम (बेशक Django का प्रयोग करके) को चलाने का प्रयास करते समय मैं इस त्रुटि थी रास्पबेरी Pi 2 (और नहीं एक वीएम )

इसे चलाना:

 sudo pip install Django

कर दी चाल!

  • बस के मामले में रास्पियन / जेसी का उपयोग कर एक साथी यह हो जाता है

6

आप शायद virtualenvwrapper का उपयोग कर रहे हैं । दौड़कर अपने पर्यावरण का चयन करना न भूलें:

$ workon env_name

4

मेरे लिए, मेरा सर्वर पायथन 2.4 का उपयोग कर रहा था। मैंने केवल पायथन 2.7 को देखा, जो मेरे सर्वर पर स्थापित था, और एक उपनाम बनाया।

alias python=python2.7

यदि आपको अधिक जानने की आवश्यकता है, तो मुझे यहां समाधान मिला


4

मुझे एक ही समस्या हो रही थी जब मैं एक नया ऐप बनाने की कोशिश कर रहा था। यदि आप लिखते हैं python manage.py startapp myapp, तो यह usr / bin / python के लिए दिखता है। लेकिन आपको इस " अजगर " की आवश्यकता है जो आपके वर्चुअल एनवी पथ के / बिन निर्देशिका में स्थित है । मैंने इस तरह से virtualenv के अजगर पथ का उल्लेख करके इसे हल किया:

<env path>/bin/python manage.py startapp myapp

3

अपनी पहली पंक्ति को प्रबंधित करने का प्रयास करें।

परिवर्तन

#!/usr/bin/python

द्वारा

#!/usr/bin/env python

3
रिवर्स ने मेरी मदद की। #!/usr/bin/env pythonद्वारा प्रतिस्थापित#!/usr/bin/python
curlyreggie

env ओएस के पर्यावरण बिन लिंक प्राप्त करने के लिए एक सामान्य यूनिक्स बिन है, OS कॉन्फ़िगरेशन या अजगर इंस्टॉलेशन के आधार पर बिन / usr / bin / की तुलना में एक अलग पथ में निवास कर सकता है और आपका समाधान काम नहीं करेगा, यह भी काम नहीं करेगा यदि 'env' bin एक अलग स्थान पर स्थापित है।
गैब्रियल कैवलैंटे

3
python3 manage.py runserver

पायथन के संस्करण की जाँच करें


3

उसे हल कर लिया!!!

युगों तक खोज करने के बाद और इन सभी अन्य सुझावों की कोशिश करने के , जो काम नहीं करते थे, मैंने आखिरकार अपने सेटअप के लिए समाधान ढूंढ लिया।

मेरा सेटअप / परिदृश्य:

  • विंडोज, पायथन 27
  • मेरे django परियोजना svn के माध्यम से जाँच की है
  • नए फ़ोल्डर में अजगर प्रबंधन ओरेकल रनवे चलाते समय , मुझे आयात त्रुटि मिली
  • जब तक मैंने इसे नहीं हटाया, तब तक python manage.py runserver मूल फ़ोल्डर में काम करता था (जो मैं इसमें बदलाव करूँगा)

उपाय

प्रबंध निर्देशिका के समान निर्देशिका में django नाम का कोई भी फ़ोल्डर निकालें

यह सही है ... जैसे ही मैंने "django" फ़ोल्डर हटाया, जिसमें केवल __init__.py शामिल था फ़ाइल थी ... मैं फिर से सर्वर चला सकता था!

हालांकि कोई विचार नहीं है


क्योंकि एक __in____ फ़ाइल वाले फ़ोल्डर को एक अजगर मॉड्यूल के रूप में माना जाता है । इसलिए आपको निहित मॉड्यूल निर्देशिका django
कौशल अग्रवाल


2

अजगर अजगर पथ को एक चर में स्टोर करें और निष्पादित करें। इसमें अन्यथा लापता पैकेज शामिल होंगे।

python_path= `which python` 
$python_path manage.py runserver

1

मुझे भी ऐसी ही समस्या का समाधान करना पड़ा था। PyCharm सर्वर नहीं चला सकता था लेकिन मैं इसे कमांड लाइन से चला सकता था। मैंने कोशिश की कि कौन सा अजगर और फिर यह सुनिश्चित कर लिया कि Pyharm एक ही दुभाषिया था और फिर सब कुछ ठीक हो गया।


1

यह त्रुटि आमतौर पर तब होती है जब django स्थापित नहीं है। यदि आपने पहले से ही django स्थापित किया है, लेकिन अभी भी वही त्रुटि हो रही है, तो आपको अलग-अलग वर्चुअल वातावरण में काम करना होगा। आपको अपने वर्चुअल एनकाउंटर के साथ ही django को भी इंस्टॉल करना होगा। जब आप वर्चुअल मशीन के शेल में होते हैं तो बस यही करें:

पाइप स्थापित django

ऐसा इसलिए है क्योंकि वर्चुअल मशीन में अलग फाइल सिस्टम है, यह django को नहीं पहचानता है भले ही यह आपके सिस्टम पर इंस्टॉल हो।


1

मैंने #PATH = "$ VIRTUAL_ENV / bin: $ PATH" को PATH = "$ PATH: $ VIRTUAL_ENV / bin" में बदलकर इस समस्या को ठीक कर दिया है। कारणों से मेरे लिए यह स्पष्ट नहीं है कि virtualenv dir में अजगर निष्पादन योग्य है, लेकिन django नहीं देखता है स्थापित अजगर करता है।


1

================================== समाधान =============== ==========================

पहला गोटो: virtualenv

कमांड चलाकर: स्रोत बिन / सक्रिय

और django स्थापित करें क्योंकि आपको 'आयात django' से संबंधित त्रुटि मिल रही है:

pip install django

फिर भागो:

python manage.py runserver

(नोट: कृपया उस प्रोग्राम के नाम में 'रनसरवर' बदलें जिसे आप चलाना चाहते हैं)

उसी मुद्दे के लिए, इसने मेरे मामले में काम किया। ================================== सार =============== ==========================

ERROR:
(Development) Rakeshs-MacBook-Pro:src rakesh$ python manage.py runserver
Traceback (most recent call last):
  File "manage.py", line 8, in <module>
    from django.core.management import execute_from_command_line
ModuleNotFoundError: No module named 'django'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "manage.py", line 14, in <module>
    import django
ModuleNotFoundError: No module named 'django'

उपरोक्त अपवाद से निपटने के दौरान, एक और अपवाद हुआ:

Traceback (most recent call last):
  File "manage.py", line 17, in <module>
    "Couldn't import Django. Are you sure it's installed and "
ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?
(Development) Rakeshs-MacBook-Pro:src rakesh$ 
(Development) Rakeshs-MacBook-Pro:src rakesh$ 
(Development) Rakeshs-MacBook-Pro:src rakesh$ python -Wall manage.py test
Traceback (most recent call last):
  File "manage.py", line 8, in <module>
    from django.core.management import execute_from_command_line
ModuleNotFoundError: No module named 'django'

उपरोक्त अपवाद से निपटने के दौरान, एक और अपवाद हुआ:

Traceback (most recent call last):
  File "manage.py", line 14, in <module>
    import django
ModuleNotFoundError: No module named 'django'

उपरोक्त अपवाद से निपटने के दौरान, एक और अपवाद हुआ:

Traceback (most recent call last):
  File "manage.py", line 17, in <module>
    "Couldn't import Django. Are you sure it's installed and "
ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?

Django की स्थापना के बाद:

(Development) MacBook-Pro:src rakesh$ pip install django
Collecting django
  Downloading https://files.pythonhosted.org/packages/51/1a/e0ac7886c7123a03814178d7517dc822af0fe51a72e1a6bff26153103322/Django-2.1-py3-none-any.whl (7.3MB)
    100% |████████████████████████████████| 7.3MB 1.1MB/s 
Collecting pytz (from django)
  Downloading https://files.pythonhosted.org/packages/30/4e/27c34b62430286c6d59177a0842ed90dc789ce5d1ed740887653b898779a/pytz-2018.5-py2.py3-none-any.whl (510kB)
    100% |████████████████████████████████| 512kB 4.7MB/s 
Installing collected packages: pytz, django

परिणाम के बाद:

(Development) MacBook-Pro:src rakesh$ python manage.py runserver
Performing system checks...

System check identified no issues (0 silenced).

You have 15 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.

August 05, 2018 - 04:39:02
Django version 2.1, using settings 'trydjango.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
[05/Aug/2018 04:39:15] "GET / HTTP/1.1" 200 16348
[05/Aug/2018 04:39:15] "GET /static/admin/css/fonts.css HTTP/1.1" 200 423
[05/Aug/2018 04:39:15] "GET /static/admin/fonts/Roboto-Bold-webfont.woff HTTP/1.1" 200 82564
[05/Aug/2018 04:39:15] "GET /static/admin/fonts/Roboto-Light-webfont.woff HTTP/1.1" 200 81348
[05/Aug/2018 04:39:15] "GET /static/admin/fonts/Roboto-Regular-webfont.woff HTTP/1.1" 200 80304
Not Found: /favicon.ico
[05/Aug/2018 04:39:16] "GET /favicon.ico HTTP/1.1" 404 1976

सौभाग्य!!


0

आपकी परियोजना django-admin.py के पुराने संस्करण का उपयोग करके बनाई गई है, जो django1.3 से पुरानी है

इसे ठीक करने के लिए एक और django प्रोजेक्ट बनाएं और इसके प्रबंधन को कॉपी करें और पुराने में पेस्ट करें


@dontario। यह एक नहीं है, मैंने अपने निजी कंप्यूटर का उपयोग करके इस प्रोजेक्ट को बनाया है जो 1.3.0 फाइनल चल रहा है। कुछ आयातित परियोजनाएं हैं जो एक पुराने संस्करण के साथ बनाई गई थीं जो कि हो सकती हैं?
अनुदान

मैंने अपने नए mange.py को नए एप्लिकेशन से पुराने एप्लिकेशन में कॉपी करने की कोशिश की, जिसका उपयोग किया जाता है और अभी भी वही त्रुटि मिलती है।
अनुदान

0

पूरी तरह से सहमत है कि यह एक मार्ग मुद्दा है, लेकिन fwiw, मुझे यही त्रुटि मिली थी। यह मेरे आभासी वातावरण को स्थापित करते समय मेरे पायथन निष्पादन योग्य के लिए एक रिश्तेदार पथ का उपयोग करने की गलती के कारण था। मैंने यह किया था:

virtualenv -p ~/python_runtimes/2.7.3/bin/python venv2.7.3 --distribute

इसके बजाय मुझे पायथन को निष्पादन योग्य बनाने के लिए पूरा रास्ता देना पड़ा।

एचटीएच, हरलिन


0

source ~ / ब्लॉग-वेनव / बिन / सक्रिय

यहां "ब्लॉग-वेनव" को बदलने के लिए अपना वर्चस्व चुनें।


धन्यवाद, कि इस के साथ मेरी समस्या को हल:File "manage.py", line 8, in <module> from django.core.management import execute_from_ ImportError: No module named django.core.management
Shailen

0

सुनिश्चित करें कि आप पथ पर सही निर्देशिकाओं के साथ पायथन का सही उदाहरण चला रहे हैं। मेरे मामले में, यह त्रुटि pythonदुर्घटना से निष्पादन योग्य चलने के परिणामस्वरूप हुई - मैंने वास्तव में python2.7फ्रेमवर्क और पुस्तकालयों के तहत Django स्थापित किया था । Virtualenv के परिणामस्वरूप भी ऐसा ही हो सकता है।


0

ठीक है तो यह इस प्रकार है:

आपने एक वर्चुअल वातावरण बनाया है और django मॉड्यूल उस वातावरण से संबंधित है। तब virtualenv खुद को अन्य सभी चीज़ों से अलग करता है, इसलिए आप इसे देख रहे हैं।

आगे की सहायता के लिए इससे गुजरें:

http://www.swegler.com/becky/blog/2011/08/27/python-django-mysql-on-windows-7-part-i-getting-started/

1. आप उस निर्देशिका पर स्विच कर सकते हैं जहां आपका वर्चुअल वातावरण संग्रहीत है और फिर django मॉड्यूल चलाएं।

2. आंतरिक रूप से आप अपने python-> साइट-पैकेज पर विश्व स्तर पर django स्थापित कर सकते हैं या तो पाइप या आसान इंस्टॉलेशन चलाकर

पाइप का उपयोग कर कमांड: पाइप स्थापित django

फिर ऐसा करें:

आयात django प्रिंट (django.get_version ()) (अजगर के किस संस्करण पर निर्भर करता है। आप अजगर 3+ श्रृंखला के लिए उपयोग करते हैं)

और फिर आप इसे चला सकते हैं: अजगर प्रबंधन थिंकपैड चलाने वाला और टाइप करके अपने वेब ब्राउज़र पर जाँच करें: लोकलहोस्ट: 8000 और आपको django संचालित पेज देखना चाहिए।

उम्मीद है की यह मदद करेगा।


0

मैंने "app" कमांड को जारी करने से पहले सेटिंग्स में थिंकपैड "INSTALLED_APPS" में नए ऐप का नाम शामिल किया। एक बार जब मैंने सूची प्रविष्टि को हटा दिया, तो मैं ऐप बना सकता था।


0

मैंने निम्नलिखित के रूप में 'django-admin' कमांड का उपयोग करके इस समस्या को हल किया:

django-admin startproject _project_name

"django-admin" से जुड़ी ".py" को हटा दें



0

मुझे यह भूल जाने के कारण मिला कि मैंने Django का उपयोग करके स्थापित किया है pip -U, इसलिए यह केवल मेरे Django ऐप को चलाने वाले उपयोगकर्ता के लिए उपलब्ध था। मुझे प्रबंधित करने के लिए Oracle करना पड़ा

sudo su -s /bin/bash MY_DJANGO_USER
/PATH/TO/MY/APP/manage.py

-2

आप सभी लोगों ने एक ऐसे मामले का उल्लेख नहीं किया है जहाँ कोई "मेरे जैसा" django befor install virtualenv स्थापित करेगा ... इसलिए मेरी तरह के सभी लोगों के लिए अगर आपने ऐसा किया है ... virtualenv..i को सक्रिय करने के बाद django को पुनर्स्थापित करें उम्मीद है की यह मदद करेगा


यह कोई हल नहीं है। यह स्टीव के द्वारा एक और समाधान पर एक टिप्पणी है।
शेंगम्रे

यही मेरे साथ हुआ और मैंने इसे कैसे तय किया ... यह एक गलती है जो किसी भी शुरुआत में पड़ सकती है
Dever
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.