[{"data":1,"prerenderedAt":97},["ShallowReactive",2],{"page-\u002Fv1\u002Fadapters\u002Fcakephp\u002Fui":3},{"id":4,"title":5,"body":6,"description":89,"extension":90,"meta":91,"navigation":92,"path":93,"seo":94,"stem":95,"__hash__":96},"content\u002Fv1\u002Fadapters\u002Fcakephp\u002Fui.md","CakePHP UI delivery",{"type":7,"value":8,"toc":84},"minimark",[9,13,48,51,58,63],[10,11,5],"h1",{"id":12},"cakephp-ui-delivery",[14,15,16],"blockquote",{},[17,18,19,23,24,27,28,31,34,35,42,43],"p",{},[20,21,22],"strong",{},"Host:"," CakePHP ",[20,25,26],{},"5.4.x"," (PHP 8.2–8.5) · Researched 2026-08",[29,30],"br",{},[20,32,33],{},"One-shot:"," ",[36,37,39],"a",{"href":38},"\u002Fapply\u002Fcakephp.full.md",[40,41,38],"code",{}," · Short: ",[36,44,46],{"href":45},"\u002Fcakephp",[40,47,45],{},[17,49,50],{},"Plugin controllers (and middlewares) are UI adapters: authorize → DTO → Use Case → render.",[17,52,53,54,57],{},"Do not use ",[40,55,56],{},"fetchTable()"," inside controllers to decide cross-plugin policy — Use Case + ACL.",[59,60,62],"h2",{"id":61},"related","Related",[64,65,66,73],"ul",{},[67,68,69],"li",{},[36,70,72],{"href":71},"\u002Fv1\u002Fadapters\u002Fcakephp","CakePHP adapter overview",[67,74,75,79,80],{},[36,76,78],{"href":77},"\u002Fv1\u002Fcore","Core"," · ",[36,81,83],{"href":82},"\u002Fv1\u002Fadopt\u002Fapply","Apply index",{"title":85,"searchDepth":86,"depth":86,"links":87},"",2,[88],{"id":61,"depth":86,"text":62},"HTTP\u002Fadmin adapters call Use Cases on CakePHP.","md",{},true,"\u002Fv1\u002Fadapters\u002Fcakephp\u002Fui",{"title":5,"description":89},"v1\u002Fadapters\u002Fcakephp\u002Fui","UCvaM8C6EQGgxJHN4QOcgy7W-MbnlgwcnFzuDVM9ef8",1786241415804]