背景:我有一个方法levelCheck()
当前用户的级别比较几个参数,并返回一个true或false。 我需要能够从任何控制器访问这个方法,我也想提出一个电话给它一个助手里面的菜单上,使用等
问:由于蛋糕的灵活性,我可以打电话从几乎任何地方蛋糕几乎所有的东西。 哪里是把这个正确的位置? 在自定义会话(扩展)? 在AppController的? 一个新的组件应对当前的用户? 在的usermodel或用户控制?
这里最重要的部分是我(或其他)如何将决定在未来这样的事情的正确位置?
背景:我有一个方法levelCheck()
当前用户的级别比较几个参数,并返回一个true或false。 我需要能够从任何控制器访问这个方法,我也想提出一个电话给它一个助手里面的菜单上,使用等
问:由于蛋糕的灵活性,我可以打电话从几乎任何地方蛋糕几乎所有的东西。 哪里是把这个正确的位置? 在自定义会话(扩展)? 在AppController的? 一个新的组件应对当前的用户? 在的usermodel或用户控制?
这里最重要的部分是我(或其他)如何将决定在未来这样的事情的正确位置?
放在AppController的这种方法
class AppController extends Controller
{
function levelCheck(){
# whatever
}
}
这是正确的地方这个动作。 因为AppController的在所有控制器延伸,从而该方法可以称为利用电流控制器对象,它是$这 - > levelCheck()。
在AppController的
function beforeFilter()
{
$this->custome_componnetst_name->levelCheck(parameters.....);
/*action*/
}