CSSJavaScriptWordPressPHPgulp[CakePHP]Ajax処理のJSON出力を共通化するCakePHPtanaka2011.01.21最近PS3とPSPを買いましたが、モンスターハンターをプレイするのではなくtorneで番組を録って見る用です。今日はAjaxでよく書く処理を共通化させるコードを紹介します。CakePHPでJSON出力するCakePHPでAjax処理を実装するとき、楽に実装できるように次のヘルパーやコンポーネントが用意されています。JSON出力に使えるJavascriptヘルパーJSON用HTTPヘッダーの送出で使えるRequestHandlerコンポーネントAjaxによるリクエストに対してJSONで応答するときは決まった手順で処理するだけなのでそこをひとまとめにしたいと考えます。配列を受け取ってJSONとしてController::render()するメソッドを考えます。必要な処理をAppController::_renderJson()にまとめてみました。}}つぎにテンプレートファイルを書きます。$javascript->object($contents);AjaxControllerはありませんが、通常のコントローラと区別するためにajaxというディレクトリをつくります。するだけで目的を達成できるようになります。通常なら個別にレイアウトをOffにしたり、テンプレートを用意することになるので結構楽になると思います。まとめ今回はAjax処理を実装するときのJSON出力を共通化しました。呼び出す前にdebug=0にしないと、正しくHTTPヘッダーが送出されないので注意が必要です。実行するtanaka2017.06.08バシャログ。Web制作スタッフによるブログです。「現場で使えるテクニック」をモットーに、Web制作全般についてお届けします。