python شرح لا وحدة نمطية مسمى django.core




django wiki (25)

أدركت ذلك لأنني لم python setup.py install . هذا الإعداد البيئة.

https://code.i-harness.com

لقد قمت بتحديث لأحدث Django الإصدار 1.0.2 بعد إلغاء تثبيت بلدي نسخة Django القديمة.ولكن الآن عند تشغيل django-admin.py أحصل على الخطأ التالي. كيف يمكنني حل هذا؟

Traceback (most recent call last):
  File "C:\Python25\Lib\site-packages\django\bin\django-admin.py", line 2, in <module>
    from django.core import management
ImportError: No module named django.core

أعلم أن هذا سؤال قديم ، لكنني واجهت نفس المشكلة ، في حالتي ، لأنني أستخدم virtualenv مع django ، لكن ملحقات الملفات .py في Windows ترتبط بتثبيت Python الرئيسي ، لذا قم بتشغيل django-admin.py مباشرة من موجه الأوامر يتسبب في تشغيله مع تثبيت Python الرئيسي دون تثبيت django.

لذلك ، بما أنني لا أعلم ما إذا كان هناك أي جنيه مكافئ في Windows ، فقد عملت حول هذا عن طريق تشغيل python متبوعًا بالمسار الكامل لـ django-admin.py ، أو يمكنك أيضًا تعديل البرنامج النصي لدفعة virtualenv لتغيير اقترانات الملفات وتغييره مرة أخرى عند إلغاء تنشيطه (على الرغم من أنني لست متأكدًا من كيفية القيام بذلك ، لأنني لست معتادًا على البرنامج النصي الدفعي).

أتمنى أن يساعدك هذا،


أنا فقط حصلت على نفس ImportError في ويندوز فيستا بعد تثبيت Python 2.7 و 3.2 واستخدام virualenv مع Python 2.7 و Django 1.4.3.

لقد قمت بتغيير اقتران ملف .py files في Explorer من 3.2 إلى 2.7. Rightclicking a .py وتغيير الإعدادات. ما زلت حصلت على ImportError.

ركضت ftype سابقة لأشياء ftype . بعد حدوث خطأ ، لاحظ أن علامات الاقتباس المزدوجة لا يتم نسخها بشكل صحيح من المتصفح إلى cmd. أعاد كتابة الأمر في كمد ، ولكن ما زلت حصلت على ImportError.

في الجذر من بيئة افتراضية مفعلة ، أعطت صراحة الأمر python ومسار django-admin.py من هناك. (env_p27) C:\Users\Gemmu\env_p27>python .\Scripts\django-admin.py startproject mysite

هذا مشغول.

شكرا لجميع المساعدة للجميع.


أنا متأكد من أنه مرتبط بشيء غير صحيح في الإعداد ، ولكن أواجه نفس المشكلة ، ويعمل بشكل صحيح إذا أسميته على هذا النحو

c:\somedir>python c:\Python26\scripts\django-admin.py startproject mysite

إذا كانت متغيرات المسار الخاصة بك صحيحة ومن shell python ، فيمكنك القيام بذلك: من إدارة الاستيراد django.core ، تأكد من تضمين "python" قبل "django-admin.py" كما يلي: python django-admin.py startebject thelittlethings


إذا كنت تستخدم نظام التشغيل Windows ، فلا تقم بتشغيل "django-admin.py" ، لأن ذلك سوف يؤدي إلى تنفيذ python.exe الخارجي ولا يمكن قراءته في django داخل بيئة افتراضية. جرب "python django-admin.py" لاستخدام python.exe الخاص بك داخل البيئة الخاصة بك.


إصلاح سريع صغير هو فقط لإنشاء symlink ln -s $SOMEWHERE/lib/python2.6/site-packages/django/ ./django


إلى ما قاله ... إذا كنت تستخدم نظام التشغيل Windows ، فلا تقم بتشغيل "django-admin.py" ...

أنا أعمل داخل بيئة افتراضية ، لذلك يبدو المسار والأمر لإنشاء مشروع جديد:

(DjangoEnv)  C:\users\timreilly\Envs\django\Scripts\django-admin.exe startproject myproject

DjangoEnv هو اسم بيئتي الافتراضية.


إن أبسط حل ليس الأكثر أناقة هو نسخ django-admin.py من مجلد Scripts. سيتم العثور على مجلد Scripts تحت تثبيت Python. على جهاز الكمبيوتر الخاص بي في C: \ Python26 \ Scripts. ثم الصق django-admin.py في المجلد الذي تحاول تشغيل الملف منه. صحيح أن استخدام مسار النظام سيمنح المرونة. هذا هو الحل الخاص إذا كنت في عجلة من أمرنا. ثم اكتب على سبيل المثال python django-admin.py startproject fluffyteaspoons وسوف تقوم بإنشاء flufyteaspoons المشروع


بعد قراءة الكثير وجدت حلًا يناسبني.

عندي

 django version 1.9.2
  1. تعيين كل متغير النظام في "المسار". لا نسخة مكررة في متغير المستخدم ولا في PYTHONPATH.

  2. ثم قم بتعيين القيمة في regedit

  1. جعل virtualenv في المجلد المطلوب عن طريق القيادة

    virtualenv VENV

  2. وأخيرا في كمد

القيادة المستخدمة

django-admin.py startproject MySite

***and not this***

python django-admin.py startproject MySite 

في المجلد الجذر من "VENV"

وعملت


حدث هذا لي لأنني ركض pip كما sudo بينما بلدي virtualenv هو الإعداد لعدم استيراد حزم الموقع الخارجي لذلك تم تثبيت Django للمستخدم الجذر ولكن ليس في virtualenv ، على الرغم من أن لدي تفعيل virtualenv عندما ركضت sudo.

الحل التبديل إلى الجذر ، وتفعيل venv ثم قم بتثبيت نقطة.


حسنا .. أفعل شيئا جذريا. أنا unistall python وحذف من Variables/PATH this: ;C:\Python26\Scripts;C:\Python26. البيئة Variables/PATH this: ;C:\Python26\Scripts;C:\Python26. وعمله ... كنت أواجه مشكلتك من قبل.


شكرا لنشر السؤال والأجوبة. لديّ إصداران من Python مثبتان ، ولكن الجذر كان يشير إلى إصدار / usr / bin ، وكنت أرغب في استخدام الإصدار 2.7 من Python في / usr / local / bin. بعد إعادة بناء / إعادة تثبيت Django و mysqldb ، كل شيء على ما يرام وأنا لا تحصل على الخطأ.


في حالتي ، أنا على OS X Lion وقمت بتركيب Python مع homebrew كنت أتلقى نفس الخطأ ، لكن أياً من الحلول المنشورة هنا ساعدني. في حالتي ، اضطررت لتحرير البرنامج النصي:

vim /usr/local/share/python/django-admin.py

ولاحظت أن الخط الأول كان خاطئًا ، حيث كان يشير إلى تركيب نظام بايثون:

#!/usr/bin/python

لقد عدّلته للتو للإشارة إلى تثبيت

#!/usr/local/bin/python

وانها عملت :)


كالمعتاد ، فشل برنامج نصي تثبيت لتعيين أذونات قراءة / تنفيذ العالم :) افعل هذا:

sudo find  /usr/lib/python2.5/site-packages/django -type d -exec chmod go+rx {} \;
sudo find  /usr/lib/python2.5/site-packages/django -type f -exec chmod go+r {} \;

كان لدي نفس المشكلة ، كان من الواضح أن كان PYTHONPATH مشكلة تكوين PYTHONPATH . الحل بسيط للغاية ، فقط قم بإنشاء ملف بهذا الاسم django.pth في دليل PYTHONHOME\Lib\site-packages حيث PYTHONHOME هو الدليل الذي تم تثبيت Python عليه (mine: C: \ Python27). أضف السطر التالي إلى الملف django.pth :

PYTHONHOME\Lib\site-packages\django

بالطبع يجب عليك تغيير PYTHONHOME إلى دليل تثبيت Python الخاص بك كما شرحت.

لاحظ أنه يمكنك تحرير django.pth لتضمين أي دليل تريد تضمينه في PYTHONPATH . في الواقع ، يمكنك تسمية هذا الملف كما تريد ، path.pth على سبيل المثال إذا كنت تريد أن يكون أكثر عمومية وتضمين العديد من مسارات الدليل.


كان لي نفس المشكلة ، وذكّرت بأنني ركبت iPython بعد ظهر اليوم السابق. لقد قمت بإلغاء تثبيت iPython وذهبت المشكلة. بالمناسبة ، أنا أعمل مع virtualenv. لقد قمت بتركيب iPython في دليل حزم المواقع على مستوى النظام ، لذا قمت بإعادة تثبيت iPython داخل كل virtualenv الذي أستخدمه. بعد تثبيت iPython بالأمس كنت قد لاحظت رسالة تحذير (من الإصدار 0.13 من iPython) أنها اكتشفت أنني كنت تستخدم virtualenv وأنه إذا واجهت أي مشكلة يجب أن أقوم بتثبيت iPyton داخل كل virtualenv.


كان لي نفس المشكلة في ويندوز إكس بي. السبب هو أنني قمت بتثبيت إصدارات متعددة من python (2.6،3.2). يتم تعيين PATH الخاص بـ Windows بشكل صحيح إلى python26 ، ولكن الملف .py مرتبط بـ python32. أريد أن يكون ملف .py مرتبطًا بـ python26. لحل المشكلة ، فإن الطريقة السهلة هي النقر بزر الماوس الأيمن على * .py (مثل django-admin.py) ، واختيار "فتح باستخدام" -> "اختيار البرنامج ..." -> "تصفح ..." (حدد c: \ python26 \ python.ext) -> "موافق". ثم يمكننا تشغيل django-admin.py في cmd دون الحاجة إلى البادئة expatiatory "c: \ python26 \ lib \ site-packages \ django \ bin".


كانت مشكلة بييونتباث متغير البيئة بالنسبة لي ، كما ذكر آخرون أعلاه ، ولكن أحدا قد أظهر حقا كيفية تعيينه للأشخاص الذين يمكن استخدام التعليمات الإضافية.

لينكس (باش)

أقوم بتعيين هذا المتغير في ملفي bashrc في مجلد منزلي (.bashrc هو الملف الخاص بي لأن shell الخاص بي هو / bin / bash).

vim ~/.bashrc
export PYTHONPATH=/usr/local/python-2.7.2/lib/python2.7/site-packages:$PYTHONPATH
source ~/.bashrc

يجب أن يكون المسار أينما كان مصدر django الخاص بك. يقع المنجم في /usr/local/python-2.7.2/lib/python2.7/site-packages/django ، لذلك حددت فقط /usr/local/python-2.7.2/lib/python2.7/site- الحزم دون جزء جانجو.

OSX

على OSX المسار هو / /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages ، ويمكنك إضافته إلى /etc/profile :

sudo echo "PYTHONPATH=/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages:$PYTHONPATH" >> /etc/profile
source /etc/profile

لدي نفس المشكلة على ويندوز ويبدو أنني وجدت المشكلة. لدي كل من 2.7 و 3.x المثبتة. يبدو أن لها علاقة ببرنامج الزميلة .py:

في نوع سطر الأوامر:

ass

والنتيجة هي:

.py = Python.File

مما يعني أن .py مرتبط بـ Python.File

ثم حاولت هذا:

ftype Python.File

أنا أخذت:

Python.File = "C: \ Python32 \ python.exe" "٪ 1"٪ *

الذي يعني في commandline .py مرتبط بتركيبي Python 3.2 - ولهذا السبب لا يمكنني فقط كتابة "django-admin.py blah blah" لاستخدام django.

كل ما عليك القيام به هو تغيير الرابط:

ftype Python.File = "C: \ Python27 \ python.exe" "٪ 1"٪ *

ثم كل شيء على ما يرام!


لقد واجهت هذه المشكلة اليوم ، اتضح أن لدي C: \ Python26 في مساري وملفات .py ارتبطت بـ Python 3.1. إصلاح الإصدار الصحيح من Python ، إما من خلال البرامج والميزات أو عن طريق تشغيل .msi ، سيؤدي إلى إصلاح الجمعيات.


هذا العمل بالنسبة لي مع bitnami djangostack:

python apps\django\django\bin\django-admin.py startproject mysite

هذا العمل على نظام التشغيل Mac OS X

في محطة تشغيل بيثون في بيثون: استيراد sys طباعة sys.path

ابحث عن مسار حزم المواقع. لقد وجدت هذا في إخراج sys.path: "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages"

خروج الثعبان. ابحث عن مكان حزم موقعك الحالية. الأعمال المتعلقة بالألغام في / مكتبة / بيثون / 26/6-الموقع

الآن كن حذرًا: تحقق من محتوى حزم الموقع للتأكد من أنها فارغة. أي ، يجب أن تكون الدليل / Library /Frameworks/Python.framework/Versions/2.7/lib/python2.7/site- حزم فارغة ، أو تحتوي فقط على ملف readme. إذا كان كذلك ، فاحذف هذا الدليل ، لأنك الآن بصدد إنشاء رابط رمزي.

ln -s /Library/Python/2.6/site-packages /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages

إذا لم تقم بحذف المجلد ، فستضع الارتباط الرمزي في المجلد.

الخيارات الأخرى هي إضافة المسار إلى sys.path. لقد اخترت مسار الارتباط الرمزي لأن لديّ نسختين من python ، لا أريد نسخًا متعددة من Django ، وأردت فقط الإشارة إلى نسخة العمل المعروفة.


يجب التأكد من أن django في PYTHONPATH.

للاختبار ، فقط قم import django من قذيفة python. يجب ألا يكون هناك إخراج:

ActivePython 2.5.1.1 (ActiveState Software Inc.) based on
Python 2.5.1 (r251:54863, May  1 2007, 17:47:05) [MSC v.1310 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>>

إذا قمت بتثبيت django عبر setuptools ( easy_install ، أو باستخدام easy_install المتضمن مع django) ، .pth site-packages إذا كان الملف .pth ( easy-install.pth ، django.pth ، ...) يشير إلى المجلد الصحيح.

HIH.


يمكنك التغلب على هذه المشكلة من خلال توفير المسار الكامل لملف django-admin.py

python c:\python25\scripts\django-admin.py startproject mysite




django