2010-06-04 11 views
6

आईपीथॉन में ऑटोरेलोड नामक एक प्लगइन है जो संभावित रूप से प्रत्येक कमांड के बाद आपके सभी मॉड्यूल को पुनः लोड कर देगा, ताकि आप स्रोत बदल सकें और खोल को छोड़ना न पड़े और अपने सभी आदेशों को पुन: प्रस्तुत कर सकें। उदाहरण के लिए http://dsnra.jpl.nasa.gov/software/Python/tips-ipython.html देखें।Django ipython shell में% autoreload के लिए सही कॉन्फ़िगरेशन क्या है?

हालांकि, यह Django के साथ इसका उपयोग करते समय सबसे अच्छा लगता है, उदा। पायथन manage.py खोल मुझे Django संदर्भ के साथ एक आईपीथन खोल देता है, लेकिन ऑटोरेलोडिंग विश्वसनीय रूप से काम नहीं कर रही है।

यहाँ क्या मैं अपने ipy_user_conf.py फ़ाइल में शामिल किया है है:

 
def main(): 
    ... # rest of the fn here 
    import ipy_autoreload 
    ip.magic('%autoreload 2') 

autoreloading सीमित मामलों में काम करता है, समय की शायद 10-20%। क्या किसी ने Django के साथ काम करने के लिए सफलतापूर्वक इसे कॉन्फ़िगर किया है?

उत्तर

2

This answer आपकी स्थिति पर भी लागू हो सकता है। Django सभी मॉडलों का अपना कैश रखता है, इसलिए यदि आप सब कुछ पुनः लोड करना चाहते हैं, तो आपको मैन्युअल रूप से इस कैश को साफ़ करना होगा।