back

プロジェクトを作ろう! (7/10)

■アドレスと呼び出されるクラス(メソッド)の関係

このプログラムでは、main関数がまず呼び出され処理されています。このmain関数では、run_wsgi_app(application) という処理が呼び出されています。この「run_wsgi_app」は、引数に渡されたオブジェクトをもとに、Webアプリケーションのための処理を実行させるものです。

ここではapplicationというオブジェクトが渡されていますが、これはその直前で作成されていますね。この部分です。
application = webapp.WSGIApplication([('/', MainPage)], debug=True)
webapp.WSGIApplicationというのは、webappフレームワークのWebアプリケーションのためのクラスです。ここで作成されたアプリケーションクラスのインスタンスをrun_wsgi_appで実行していたのですね。

このWSGIApplicationクラスは、インスタンスを作成する際、第1引数に[('/', MainPage)]という値を指定しています。この[]というのは、Pythonの配列であり、その中の()はタプルと呼ばれる、配列と同じように複数の値を管理するものです。このWSGIApplicationでは、引数に「アクセスするURLと、それに割り付けられるクラス」の情報をまとめて渡すようになっています。

ここでは、('/', MainPage)という値がありますね。これは'/'にアクセスされたら、MainPageがその処理を行う、ということを意味します。このように、アクセス先ごとにクラスを定義し、その関連を配列にまとめておくことで、「どこにアクセスされたらどのクラスが処理する」ということを指定するようになっているのです。


(by. SYODA-Tuyano.)

※リストが表示されない場合

AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。

application = webapp.WSGIApplication([('/', MainPage)], debug=True)

def main():
    run_wsgi_app(application)



   

記事のリストに戻る



PC Site G+ mail