何时在CakePhp中使用Component或Model

时间:2012-04-23 22:06:11

标签: cakephp cakephp-2.0

有时我很难选择在组件控制器中添加某段代码或在CakePhp框架中添加模型。代码块不处理数据库中的条目,但它仍然与某个模型相关。什么是最好的做法?

感谢

Yehia A.Salam

1 个答案:

答案 0 :(得分:2)

好吧,我会举几个例子

  • 任何数据处理都应该在模型中进行。 (获取数据,计算,转换,保存......)
  • 处理请求和响应的东西通常会进入组件(如auth)
  • 与数据一起使用的可重用代码应该成为一种行为(如slugs或标签,请参阅cakedc插件)
  • 在输出上执行重复任务的代码将进入帮助程序(重新获取帮助程序)

如果您开始阅读the book,第一页已经开始描述控制器,模型和视图之间的基本差异。:

  • 控制器处理请求,并帮助协调和准备客户端的响应。阅读有关控制器的更多信息

  • 视图是CakePHP中的表示层。它们将从Models获取的数据转换为客户端请求的输出格式。阅读有关视图的更多信息

  • 模型是应用程序的核心,它们处理数据的验证,存储和检索。了解有关模型的更多信息

了解MVC pattern也有帮助。

对于涉及组件,行为和帮助器的示例,请查看CakeDC recaptcha plugin