سؤال

في جانغو المشروع السطر التالي يلقي ImportError:"لا وحدة اسمه elementtree".

  from elementtree import ElementTree 

ومع ذلك ، يتم تثبيت وحدة (أي لا يمكن تشغيل تفاعلية python shell ثم اكتب هذا السطر المحدد دون أي ImportError) و الدليل الذي يحتوي على وحدة نمطية على PYTHONPATH.ولكن عند الوصول إلى أي صفحة في المتصفح بطريقة أو بأخرى لا يمكن العثور على وحدة و يلقي ImportError.ما يمكن أن يسبب هذا ؟

هل كانت مفيدة؟

المحلول

هل يمكنك الاستيراد elementtree داخل قذيفة Django:

python manage.py shell

على افتراض أن لديك إصدارات متعددة من الثعبان ولا تعرف أي منها يتم استخدامه لتشغيل موقعك ، أضف ما يلي إلى عرضك وادفع python_ver إلى القالب الخاص بك ، سيظهر لك إصدار Python الذي تستخدمه:

import sys
python_ver = sys.version

يمكنك أيضًا إضافة المسار بشكل صريح إلى ElementTree برمجيًا في settings.py:

import sys
sys.path.append('path to where elementtree resides')

نصائح أخرى

لقد واجهت أيضًا مشكلات متعددة المنصات حيث كانت ElementTree متاحة من وحدات مختلفة على أنظمة مختلفة ... انتهى الأمر بالعمل بالنسبة لي:

try:
    import elementtree.ElementTree as ET
except:
    import xml.etree.ElementTree as ET

قد تساعدك أو لا تساعدك ...

في دليل التثبيت

على سبيل المثال:

C:\Python26\Lib\site-packages

ومعرفة ما اذا كان كل elementtree و جانغو هناك.

إذا كان كلاهما لم يكن هناك, ثم ربما لديك عدة دلائل التثبيت للحصول على إصدارات مختلفة من بيثون.


في أي حال, يمكنك حل المشكلة عن طريق تشغيل هذا الأمر:

بيثون setup.py تثبيت

تشغيله مرتين, مرة واحدة داخل تحميل django مرة واحدة داخل تحميل elementtree.فإنه سيتم تثبيت كل من التنزيلات في كل ما الافتراضي الحالي الخاص بك الثعبان هو.

المراجع:

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top