Entries

スポンサーサイト

カテゴリ:スポンサー広告
更新日:--------
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

久しぶりにGoogle App Engineにて。PILの64bit版のインストールと開発環境でのXG。

カテゴリ:Google App Engine
タグ: GAE 
更新日:2012-12-29
久しぶりにGoogle App Engineをいじったら、いくつかハマったので書いておく。


PILのインストール

新しいPCは、Windows7の64bitにしたので、Pythonも64bit版にしたところ、PILのインストールでPythonが見つからないとのこと。

> 64bit Windows用のPythonインストーラ:Python Image Libraryのインストール - 流れ着いたら。。。

上記を参考に、「Python Extension Packages for Windows - Christoph Gohlke」から「PIL-1.1.7.win-amd64-py2.7.‌exe」をダウンロードして、インストールした。

開発環境でXGを使う

そういや、Cross-Group Transactions(XG)が使えるようになったという情報を得たあたりで、GAEから離れていたのだった。というわけで、早速使ってみる。

> python - Cross Group (XG) Transactions and Further Explanation of use - Stack Overflow
from google.appengine.ext import db

xg_on = db.create_transaction_options(xg=True)

def my_txn():
x = MyModel(a=3)
x.put()
y = MyModel(a=7)
y.put()

db.run_in_transaction_options(xg_on, my_txn)
オプションフラグを作って、それを指定してトランザクションを実行すればいいらしい。

が、エラーになる。どうやら、ローカルの開発環境では、そのままでは使えないらしい。

> GAEのローカル(dev_server)でXG Transactionを使う方法 - コラビットの中の人

というわけで、コマンドプロンプトから
dev_appserver.py --high_replication /your/project/path
で起動するようにしたところ、動いた。

ランチャーが使えないとか、起動するたびにデータがクリアされるとか、いろいろ不便。記事は、一年前なのに、まだローカルはHRD標準じゃないんだね。
スポンサーサイト

Appendix

プロフィール

いむら@fintopo いむら@fintopo

ガーデニングが趣味のフリーのシステムエンジニア兼プログラマ(フルスタックエンジニア)です。

仕事募集中です。個人なので、融通がききます。 大規模な開発はできないかもしれませんが、研究や製品開発レベルでの小規模開発、特に相談しながら新しいものを作っていくのが得意です。詳しくはWebサイトをご覧ください。
詳しくは「fintopoとは」をご覧ください。

> fintopoとは

このページのQRコード

季節暦

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