我想在一个“模型”中调用 .ctp 文件,而 .ctp 文件在另一个“视图”中。cakephp可以吗?
或者我应该在我的“模型”中调用那个“控制器”函数而不是那个?
CakePHP 简而言之,以及您可能需要搜索的关键字:
Dispatcher
并Routing
控制 URL 如何到达您的控制器。
Controller
放置系统逻辑并控制来自Dispatcher
Component
放置可以被Controller
s轻松共享的逻辑Model
适用于所有与数据库相关的查询、操作、选择、删除
Behavior
可以认为类似于Component
,它为模型提供“mixins”以实现类似的行为,例如将TreeBehavior
您的数据库表抽象为父子关系。View
用于Controller
向用户呈现单个页面
Helper
放置共享功能以帮助 View 呈现某些内容。例如,FormHelper
帮助您进行各种形式的渲染、输入等。将全局共享库放在app/Lib
文件夹中,以便使用App::uses('...', 'Lib')
. 例如,Gravatar
帮助您将电子邮件转换为 md5 哈希字符串的库。所以这可以在您的应用程序中的任何地方使用。
vendors
适用于那些不尊重 MVC 的打包供应商库,例如,swiftmailer
它可以帮助您发送电子邮件。通常我会将它们抽象到我的Lib
文件夹中以方便使用。
plugins
适用于互联网上随处可见的烘焙 CakePHP 应用程序。
还有其他一些你可能感兴趣的深入的东西,但这些是你在使用像 CakePHP 这样的 MVC 框架之前需要了解的最基本的东西。在深入研究之前查看他们的文档。
您无法在模型中访问视图(.ctp),这违反了 MVC 架构和逻辑。只是告诉我们更多你想做什么,也许你做错了什么。