我有一个afterFind函数的行为,我只想在非管理员前缀上调用。 $ this-> params不起作用,因为$ this引用了这种行为。如何根据页面或前缀使此行为成为条件?
答案 0 :(得分:1)
您可以在控制器中分离(或禁用)行为:
function beforeFilter(){ if($this->params['admin'])$this->Model->Behaviors->detach('Foo'); }
http://book.cakephp.org/view/1072/Using-Behaviors
或者您可以在查找中添加自己的行为关键字(例如“包含”)。