【发布时间】:2017-04-27 21:16:17
【问题描述】:
在我的 CakePHP 3 应用程序中,我为不同的部分使用了不同的控制器 - 如下所示:
app/src/Controller/Admin/...
app/src/Controller/Backend/...
app/src/Controller/Frontend/...
app/src/Controller/Api/...
所有模板都遵循相同的层次结构。
现在,由于我的应用程序变得越来越复杂,我还想拆分所有模型类,将它们放在类似的文件夹结构中。
那么这怎么可能呢?如何告诉控制器默认使用哪个表类?
【问题讨论】:
-
只是为了整理它们?为什么?您想通过拆分它们来完成什么?我什至不会像那样构建你的控制器 - 即使你有一个包含 500 多个模型的极其复杂的应用程序,蛋糕的约定也能正常工作
-
好吧,如果我将模型类放在同一个文件夹结构中,它们将无法识别 - 控制器总是将模型加载到默认目录 (...app/src/Models/) 中。我想将它们分开以获得更好、更清晰的应用程序结构。例如,在后端和管理区域中需要一些行为和虚拟字段,这些在前端已经过时。如果您将所有内容放在一个简单的模型中,显然维护和进一步开发会变得更加困难。控制器结构遵循蛋糕路由和前缀。
-
您的 API 肯定会使用大部分与前端、后端和管理员相同的表。您似乎想在结构的每个文件夹中制作它们的副本,以便您可以删除每个特定区域中未使用的虚拟字段?看起来您正在接受更多的维护,因为您修复的任何错误或添加的功能都需要在多个版本上进行检查。
标签: cakephp cakephp-3.0