从模型中访问app_controller函数

时间:2011-04-25 02:28:23

标签: cakephp

我为应用程序的需求创建了一个精心设计的日志记录和错误报告系统,它与使用app_controller中的函数进行交互。我可以从系统中的任何控制器调用它,因为控制器扩展了app_controller。我希望能够从模型函数中调用此函数。任何人都可以告诉我如何做到这一点,或者另类的方法吗?

1 个答案:

答案 0 :(得分:3)

几个选项:

  1. 使用自定义AppModel(app / app_model.php)将逻辑迁移到模型层。假设您的所有控制器至少使用一个模型,您可以针对任何模型调用任何日志记录功能。即:$this->MyModel->customLog('test');
  2. 将逻辑迁移到类,将其存储在app / libs中,并根据需要在控制器或模型中加载它。
  3. 即:

    App::import('Lib', 'CustomLog');
    $this->CustomLog = new CustomLog(); 
    $this->CustomLog->customLog('test');