私は、新しいコンテンツを非同期でレンダリングし、それをサポートするブラウザの状態を保存するために、自分のウェブサイトでHTML5履歴APIを少し試してみる予定です。明らかに、これはサーバーへのAJAXリクエストをたくさん作成することを意味し、私はデザインアプローチの点で問題にぶつかってきました。私はすでにコンテンツを非同期的に小規模な方法でレンダリングしているサイトをいくつか持っています。その中で私はクライアント側で新しいHTMLを生成するための独自のソリューションを導入しています。CakePHPには、データを非同期に要求するときに、サーバ側でビューを部分的に再レンダリングする方法はありますか?
しかし、今私がしようとしているのはもう少し堅牢なソリューションが必要です.JavaScriptのテンプレートエンジンに頼るのではなく、MVCの流れを利用する方法でやりたいのです私のコントローラから返された生データを処理するための私自身のすごいjavascriptがあります。この機能は特定のHTML5対応ブラウザにのみ関連するので、多くの人が見ていないようなものについては、クライアント側で膨大な量の膨大なものを紹介していません。
本質的に、私が思っているのは、既にビューファイルに入っているプレゼンテーションロジックを利用して、必要な新しい、すぐに使えるHTMLを選択して返す方法があるコントローラーから返された生データからクライアント側でそれを行うためにホイールを再発明する代わりに?
基本的に私は部分的にしかHTMLの文字列として返されるAJAXのリクエストに応じてビューをレンダリングできるようにしたいです。たとえば、ユーザーが別の投稿のリンクをクリックした場合、私は既に書いたビューファイルを使用して、HTMLの表示を投稿の内容に合わせて、そのHTMLのすべてをビルドせずに返します。ビューと全体のレイアウト。私は '$ this-> render( '/ elements/some_element')で解決策を見つけた可能性があります。 – cmw