2011-08-18 20 views
6

मैंDjango ImportError

/appname 
    __init__.py 
    models.py 
    /submodule1 
     __init__.py 
     a.py 

a.py अंदर मैं आयात निम्नलिखित है निर्देशिका संरचना के साथ अपने ही Django आवेदन बनाया

from ..models import Something 

यह ठीक काम करता है अगर मैं अपने /djangoproject फ़ोल्डर के अंदर /appname है, लेकिन जब मैं ऐप को पायथन के साइट-पैकेज (setup.py के माध्यम से मैंने बनाया) के साथ इंस्टॉल करें, सभी नरक टूट जाते हैं और a.py अब निम्नलिखित ई के साथ Something आयात नहीं कर सकते हैं। rror:

from distutils.core import setup 

setup(name='appname', 
     version='0.1', 
     packages=['appname', 'appname.contrib'], 
) 

उत्तर

5

यह पता चला है कि यह एक परिपत्र आयात त्रुटि थी। models.pya.py आयात कर रहा था और a.pymodels.py आयात कर रहा था।

इस चक्र आयात मुद्दों का हल तोड़कर, लेकिन अब यह कैसे दोनों `/ submodule1` और` में अजगर में आलसी मूल्यांकन करने के लिए :-)

+0

मैंने इसे स्वयं में चलाया है, मैंने केवल उस फ़ंक्शन के अंदर आयात कथन डाला है जिसके लिए 'a.py' की आवश्यकता है लेकिन यह icky लगता है। आपका समाधान क्या था? – Harry

2

रखो खाली नामक फ़ाइल: __init__.py अंदर/submodule1 तो पायथन मॉड्यूल के रूप में यह पार्स कर सकते हैं

ImportError: cannot import name Something 

यहाँ setup.py है। यह मदद करनी चाहिए। उसी/ऐपनाम में - __init__.py फ़ाइल

+0

हाँ मैं था '__init __। Py' यह पता लगाने की समय आ गया है/'लेकिन यह अभी भी मुझे' आयात त्रुटि 'दे रहा है। –

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