cakePHP 1.3とbackbone.jsの連携でハマった

すげーハマった。
backbone.jsのsaveメソッドでモデルの変更内容をpostして保存しようとしたんだけど、
cakePHP側で$this->params['form']にも$this->dataにも$this->params['data']にもどこにも入ってこない。

Backbone.syncの内容をdumpしたりして、
ようやく解決。

Backbone.syncだと、
リクエストをapplication/jsonでおくっちゃうから、cakePHP側で取れてなかった。
なんか正規の取り方ってあるんでしょうか。

結局はコンポーネント内でRequestHandlerをcomponentsに設定して、
以下のようにして$this->dataで取れるようにした。

         if($this->RequestHandler->requestedWith('json')){
             $json = json_decode(trim(file_get_contents('php://input')));
             $controller->data = $json;
         }


これ、みんなハマってないのかな?