Python

トラックバックのテスト

自作ブログにトラックバックを送信するテスト。 むしろトラックバックを受信するテストか。

データストアに保存してある文字列をDjangoテンプレートとして使用する方法

(この記事の内容はGoogle App Engine SDK 1.6.6、Mac OX X 10.7.4で試しました)いま、Google App Engine+Pythonで作成したアプリで、Djangoのテンプレートエンジンを使用しているのですが、テンプレートファイルの代わりに、データストアから取得してきた…

改行をに変換するJinja2のカスタムフィルター

Google App Engine for PythonでテンプレートエンジンをDjangoからJinja2に変更したのですが、Djangoで使っていたlinebreaksbrフィルターが使えなくなり困ってしまいました。 そこでlinebreaksbrという同じフィルター名でJinja2のカスタムフィルターを作って…

Google App Engine for Python でセッション管理

2011-03-25 追記ここから:下のコードではDatastoreエンティティのkey値をセッションIDに使用していますが、これはセッションハイジャックの脆弱性が生じてしまうので避けるべきだと気付きました。key値は一見ランダムな文字列に見えますが、同じkindのエン…

Google App Engine/Python でタギングを実現する方法

Google App Engine で、いわゆるタギング( tagging )を実現したいのですが、うまい方法がわからず悩んでいます。いまは以下のようにしています。 class Tag(db.Model): label = db.StringProperty() class Item(db.Model): name = db.StringProperty() tag…

Google App Engine/Python でリクエストハンドラーの共通処理を簡潔にまとめる方法

最近、 Google App Engine をいじりはじめました。とりあえずスタートガイドに目を通して、簡単なアプリを作って勉強しているところです。そのアプリでは、各ビューのクラスに共通の処理があるのですが、その処理をいちいち書くのが面倒くさいので、その処理…