Slim3

リストプロパティのINフィルタを別プロパティでソートするにはカスタムインデックスが必要

リストプロパティpersonKeysへのINフィルタを、プロパティlatestFavDateによるソートで並べ替えようとしたら頭がこんがらがったのでメモしておきます。 List<Boke> favBokes = Datastore.query(meta).filter(meta.personKeys.in(keys)).sort(meta.latestFavDate.de</boke>…

タスクチェーンによる30秒制限を超えた処理を試す

タスクチェーンについてよくわかっていなかったので、実験してみました。 実装にあたっては下記を参考にさせていただきました。 Togetter - 「タスクキューのチェインについて」 Togetter - 「タスクキューのチェインについて2(Mapper APIで代替も検討?)…

schemaversionテクニックを利用したスキーマ変更を試す

App EngineのDatastoreにおけるスキーマ変更に対応するために、schemaVersionというテクニックが編み出されています。Slim3本ではChapter7-4-1(p.265)で紹介されています。 自分の場合には、以下のようなケースでスキーマ変更が必要になりました。 日付のプ…

Slim3なProjectの依存関係を図に

BPStudy #33 後半(Slim3)のメモまとめ

BPStudy #33に参加させていただきました。前半は @kazunori_279 さんによる Google I/Oの貴重な最新レポートでした。 しかし私は前提知識が足りなかったため、ざっくりと理解するのがやっとでした。もったいないので、あとで復習したいと思います。 #appengi…

Slim3でhttpメソッドとControllerをマッピングする

前回、Slim3における拡張子付きURIのマッピングを試した。 今度は、同じURLへのリクエストについて、httpメソッドがGETならGetController、DELETEメソッドならDeleteControllerが呼ばれるみたいな感じで、httpメソッドとControllerを一対一にしたら、RESTful…

Slim3における拡張子付きURIのマッピング

CoolなURIでJSONを返すURLはどう表現するか 内部的には「/user/get?id=12345&type=json」となるようなURI(idが12345のユーザ情報のJSON形式)を、Cool URIではどのように表現するのが適切か悩んでいた。「/user/json/12345」や「/user/12345/json」はなんか…

Maven2でslim3のeclipseプロジェクト作成

slim3を通して初めてmavenを使ってみたので、やり方をメモ。 Maven2があれば面倒な作業が一行の命令で済む Maven2は、構成管理ツール。コマンドプロンプトから1行の命令を実行するだけで、必要なお膳立てを全部やってくれる。インストールは、Maven - Welco…