プロジェクトを作ろう! (7/10)
作成:2009-12-28 16:12
更新:2010-05-10 21:05
更新:2010-05-10 21:05
■アドレスと呼び出されるクラス(メソッド)の関係
このプログラムでは、main関数がまず呼び出され処理されています。このmain関数では、run_wsgi_app(application) という処理が呼び出されています。この「run_wsgi_app」は、引数に渡されたオブジェクトをもとに、Webアプリケーションのための処理を実行させるものです。
ここではapplicationというオブジェクトが渡されていますが、これはその直前で作成されていますね。この部分です。
このWSGIApplicationクラスは、インスタンスを作成する際、第1引数に[('/', MainPage)]という値を指定しています。この[]というのは、Pythonの配列であり、その中の()はタプルと呼ばれる、配列と同じように複数の値を管理するものです。このWSGIApplicationでは、引数に「アクセスするURLと、それに割り付けられるクラス」の情報をまとめて渡すようになっています。
ここでは、('/', MainPage)という値がありますね。これは'/'にアクセスされたら、MainPageがその処理を行う、ということを意味します。このように、アクセス先ごとにクラスを定義し、その関連を配列にまとめておくことで、「どこにアクセスされたらどのクラスが処理する」ということを指定するようになっているのです。
ここでは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)
※関連コンテンツ
「PythonによるGoogle App Engine(GAE)プログラミング入門」に戻る