シンプルなCMSアプリケーションを構築してCakePHPを習得しようとしていますが、うまくいきましたが、さらに追加していくうちに、MVC構造によって少し混乱しています。CakePHP:再利用可能なコンテンツブロックとMVC
自分の投稿に加えて、自分のサイトの他のページに要素として表示したい「コンテンツブロック」(基本的には編集可能なタイトルとコンテンツフィールド)の簡単なモデルを作成しました。
説明を助けるために:
私の投稿コントローラは、ブログの記事のすべてを一覧表示しますindexアクションを持っています。そのアクションのビューでは、データベースから特定の「コンテンツブロック」を取り出してページの上部に表示したいと思っています。
もう1つの例は、すべてのページのフッターに表示される管理者編集可能な「約」吹き出しです。
最後に、WordpressのテキストウィジェットやMagentoの静的ブロックと同様の方法で、私は「コンテンツのブロック」を防ぐしたい直接アクセス可能(すなわちdomain.com/content_blocks/view/id)
何CakePHPとMVCのコンベンションに真実を込めてこれを実現する理想的な方法ですか? 私はそれにいくつかのスタブ(要素でrequestActionを使用するなど)を持っていましたが、もっと混乱することに成功しました。
返信ありがとうございます。私はついにそれを手に入れました!あなたがリンクしているそのブログ記事は、requestActionオーバーヘッドを少し明確にしました。それは特にキャッシングについては言及していません - 私はそれが 'array( 'cache' => true)'を要素関数に使用していると仮定しますか? – Viento
はい、これは要素をキャッシュするコードです。この記事では、パフォーマンスを向上させるキャッシュされた要素への切り替えについて述べました。 キャッシュしたい期間については、さまざまなオプションがあります。http://book.cakephp.org/2.0/ja/core-libraries/caching.html – jimiyash