簡単な CMS アプリを作成して CakePHP を学習しようとしています。うまくいきましたが、さらに追加していくと、MVC 構造に少し混乱しています。
投稿に加えて、サイトの他のページ内の要素として表示したい「コンテンツ ブロック」(基本的には管理者が編集可能なタイトルとコンテンツ フィールド) の単純なモデルを作成しました。
説明を助けるために:
私の Posts コントローラーには、すべてのブログ投稿を一覧表示する index アクションがあります。そのアクションのビューでは、特定の「コンテンツ ブロック」をデータベースから取得して、ページの上部に表示したいと考えています。
もう 1 つの例は、すべてのページのフッターに表示される、管理者が編集可能な「概要」の宣伝文句です。
最後に、Wordpress のテキスト ウィジェットや Magento の静的ブロックと同様に、「コンテンツ ブロック」に直接アクセスできないようにしたいと思います (つまり、domain.com/content_blocks/view/id)。
CakePHP と MVC の規則に忠実でありながら、これを達成する理想的な方法は何ですか? 私はそれにいくつかの刺し傷を負わせました(要素で requestAction を使用するなど)が、さらに混乱することに成功しただけです。