什么是CakePHP行为?

什么是CakePHP行为?,cakephp,cakephp-2.0,cakephp-2.1,Cakephp,Cakephp 2.0,Cakephp 2.1,什么是CakePHP行为?我应该在哪里以及如何使用它?CakePHP中的行为存在于框架的模型端。因为我们都喜欢创建一个可重用的、枯燥的逻辑,所以CakePHP提供了一些行为来避免“丑陋”和额外的代码。行为“改变”了模型的行为方式,强制它“充当”某种东西 您可以想象,它们是用于模型的,控制器的组件是什么,视图的辅助对象是什么。行为可以帮助您使代码更加抽象,更不用说它们可以在不同的模型之间共享 当您强制一个模型作为某物或某物进行行为时,您只需使用该行为的函数。当然,稍后您可以删除或暂时强制模型忘记这

什么是CakePHP行为?我应该在哪里以及如何使用它?

CakePHP中的行为存在于框架的模型端。因为我们都喜欢创建一个可重用的、枯燥的逻辑,所以CakePHP提供了一些行为来避免“丑陋”和额外的代码。行为“改变”了模型的行为方式,强制它“充当”某种东西

您可以想象,它们是用于模型的,控制器的组件是什么,视图的辅助对象是什么。行为可以帮助您使代码更加抽象,更不用说它们可以在不同的模型之间共享

当您强制一个模型作为某物或某物进行行为时,您只需使用该行为的函数。当然,稍后您可以删除或暂时强制模型忘记这个或那个行为

有很多其他的东西,你可以问模型的行为,例如,检查模型的行为是否像这样或那样,如果没有行为

通常,您使用
public$actAs=array()命令模型进行操作语句,但也可以通过
$this->ModelName->Behaviors->load('BehaviorName')
来实现


当然,你可以在模型中使用它们。除非您实现自己的行为,而不是使用面包店提供的大量行为,否则您将加载并使用它们,就像模型已经支持此类功能一样。

CakePHP中的行为存在于框架的模型端。因为我们都喜欢创建一个可重用的、枯燥的逻辑,所以CakePHP提供了一些行为来避免“丑陋”和额外的代码。行为“改变”了模型的行为方式,强制它“扮演”某些东西。

非常感谢Dachi的善意解释。你能不能给我举一个一般的实际例子,我应该在哪里使用它们?非常欢迎。嗯,我浏览了一些网站,我认为给出了一个合理的例子,说明行为的使用是非常有效的。幸运的是,在食谱中可以看到。有一整章(根据上面的评论)是关于什么行为,什么时候/为什么使用它们等等。这不是回答这样问题的地方。有时你在寻找一种不同的方法。我认为这个问题是正确的。吊柱的回答对我帮助很大。记住接受他的回答。