8

ボトルに問題があり_initializeます。関数は2回実行されます。アプリの例:

 @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.

なぜそれが起こっているのですか、そしてどうすればそのような事前初期化をボトルで行うことができますか?

4

1 に答える 1

12

問題は関数のreloader=True引数ですrun。文については、http://bottlepy.org/docs/dev/tutorial.html#auto-reloadingを参照してください。

すべてのモジュールレベルのコードは少なくとも2回実行されます!気をつけて。

于 2012-10-25T08:30:09.890 に答える