Бутылка Python запускает метод инициализации дважды

У меня проблема с бутылкой, _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.

Почему это происходит и как я могу сделать такой предварительный запуск в бутылке?

1 ответ

Решение

Проблема заключается в reloader=True аргумент в пользу run функция. Смотрите предложение http://bottlepy.org/docs/dev/tutorial.html:

Весь код уровня модуля выполняется как минимум дважды! Быть осторожен.

Другие вопросы по тегам