什么是CakePHP行为?

D55*_*555 4 cakephp cakephp-2.0 cakephp-2.1

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

Dav*_*vit 13

CakePHP中的行为生活在框架的模型方面.由于我们都喜欢创建可重用且干燥的逻辑,因此CakePHP提供了行为以摆脱"丑陋"和额外的代码.行为"改变"模型的行为方式,强制它"充当"某种东西.

你可以想到它们,它们是用于模型的,控制器和助手的组件是用于视图的.行为可以帮助您使代码更抽象,更不用说它们可以在不同的模型之间共享.

当您强制模型表现为某事物或某些事物时,您只需使用该行为的函数.当然以后你可以带走或者可能暂时迫使模型忘记这个或那个行为.

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

通常,您告诉模型使用public $actAs = array();语句来表现,但您也可以这样做$this->ModelName->Behaviors->load('BehaviorName').

你当然可以在模型中使用它们.除非你实现自己的行为而不是在面包店使用大量的行为,否则你加载它们并使用它们就好像模型已经支持这种类型的功能.