2012-10-25 25 views
7

चलाता है मुझे बोतल के साथ समस्या है, _initialize फ़ंक्शन दो बार चलाया जाता है। उदाहरण एप्लिकेशन:पायथन बोतल प्रारंभिक विधि को दो बार

@route("/index") 
def index(): 
     return "bang" 

def _initialize(): 
     print("bam") 

if __name__ == "__main__": 
    _initialize() 
    run(reloader=True, host="localhost", port = 8990) 

उत्पादन होता है:

bam 
bam 
Bottle v0.11.rc1 server starting up (using WSGIRefServer())...        
Listening on http://localhost:8080/               
Hit Ctrl-C to quit. 

यह क्यों हो रहा है और कैसे मैं बोतल में इस तरह के पूर्व init कर सकते हैं?

उत्तर

11

समस्या run फ़ंक्शन के लिए तर्क है। वाक्य के लिए http://bottlepy.org/docs/dev/tutorial.html#auto-reloading देखें:

सभी मॉड्यूल-स्तर कोड कम से कम दो बार निष्पादित किए जाते हैं! सावधान रहे।