主にプログラミングに関して。Python, .NET Framework(C#), JavaScript, その他いくらか。
記事にあるサンプルやコードは要検証。使用に際しては責任を負いかねます

スポンサーサイト

                
tags:
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

GoogleAppEngineがPython2.7に対応したので切り替える

                
tags:
GAEが公式でPython2.7対応になった(http://code.google.com/intl/en/appengine/docs/python/gettingstartedpython27/)。日本語のドキュメントはまだだけど。主な変更はマルチスレッドが使えるようになったことや、使用ライブラリが新しくなったこと(変更詳細)。

さて、公式のドキュメントを参考にまず一つ、Python2.5で動かしていたものを2.7に切り替えてみる。手始めは簡単な、HTMLファイルを投げるだけで、テンプレートやデータストアを使っていないものから。

1.app.yamlの書き換え
app.yamlファイルのヘッダを2.7対応に書き換える。そしてスクリプトファイルの拡張子を.pyから任意の名前に(今回はapp)。


application: helloworld
version: 1
runtime: python
api_version: 1

- url: /.*
script: helloworld.py



application: helloworld
version: 1
runtime: python27
api_version: 1
threadsafe: true

handlers:
- url: /.*
script: helloworld.app



2.
helloworld.pyを開く。webappからwebapp2に切り替わった点に留意したい。まずインポートモジュールを一つ変える。以下の通りに書き換えた。
旧:from google.appengine.ext import webapp
新:import webapp2 as webapp

さっき拡張子から置き換えた名前を変数として、そこにWSGIApplication インスタンスを継承。


def main():
application = webapp.WSGIApplication(
[('/bliss', Slide),
('/*', Fade),],
debug=False)
run_wsgi_app(application)

if __name__ == "__main__":
main()



app = webapp.WSGIApplication(
[('/bliss', Slide),
('/*', Fade),],
debug=False)



******
以上で終了。アップロードしたら正常に動いた。

ローカルテストやアップロードの方法は変わっていない。このあとはテンプレートやデータストアを使用したものも切り替えてみようかなぁ。
            

コメントの投稿

非公開コメント

プロフィール

hMatoba

Author:hMatoba
Github

最新記事
リンク
作ったものなど
月別アーカイブ
カテゴリ
タグリスト

検索フォーム
Amazon
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。