간단한 CMS 앱을 작성하여 CakePHP를 배우려고하는데 잘 진행되고 있지만 더 많이 추가하면서 MVC 구조에 다소 혼란스러워집니다.CakePHP : 재사용 가능한 콘텐츠 블록과 MVC
내 게시물 외에도 내 사이트의 다른 페이지에 요소로 표시하려는 '콘텐츠 블록'(기본적으로 관리자가 편집 가능한 제목 및 콘텐츠 필드)에 대한 간단한 모델을 만들었습니다.
설명하는 데 도움하려면
내 포스트 컨트롤러는 블로그의 모든 게시물을 나열하는 인덱스 작용을 가지고있다. 그 작업에 대한보기에서 나는 또한 데이터베이스에서 특정 '콘텐츠 블록'을 가져 와서 페이지 맨 위에 표시하려고합니다.
또 다른 예는 모든 페이지의 꼬리말에 표시되는 admin-editable 'about'광고 메시지입니다.
마지막으로는, 워드 프레스 텍스트 위젯 또는 젠토 정적 블록에 비슷한 방식으로, 내가 직접 액세스 할 수있는 '콘텐츠 블록'을 방지하고 싶습니다(즉 domain.com/content_blocks/view/id)
무엇 CakePHP와 MVC 컨벤션에 그대로 머무르는 동안 이것을 달성하기위한 이상적인 방법입니까? 필자는 요소에 requestAction을 사용하는 것과 같이 여러 번 찌르다가 더 혼란 스러울뿐입니다.
답장을 보내 주셔서 감사합니다. 마침내 작동했습니다! 링크 된 블로그 게시물은 requestAction 오버 헤드를 약간 명확하게 해줍니다. 그것은 특별히 캐싱을 언급하지 않습니다 - 나는 그것을'array ('cache'=> true)'요소 함수에 사용하고 있다고 가정합니까? – Viento
예, 요소를 캐시하는 코드입니다. 이 기사에서는 캐시 된 요소로 전환하여 성능을 향상시키는 것에 대해 언급했습니다. 캐시 할 기간에 사용할 수있는 옵션은 다음과 같습니다. http://book.cakephp.org/2.0/ko/core-libraries/caching.html – jimiyash