如何在default.ctp中调用查询

时间:2016-02-24 10:53:23

标签: cakephp cakephp-2.0 cakephp-2.3

我想在view / default.ctp中获取查询($ this-> User-> find(" count");)。该查询对所有页面都很常见。现在我在所有页面中调用该查询。是否有任何替代方法可以一次调用查询并将数据提取到default.ctp中。我正在使用cakephp 2x。

3 个答案:

答案 0 :(得分:1)

将其放入AppController::beforeRender()

每次呈现内容之前,都会调用

beforeRender 。我不知道为什么其他人在过滤器之前建议......这很清楚。

See the documentation.

public function beforeRender(){
    parent::beforeRender();
    $this->loadModel('User');
    $this->set('userCounter',$this->User->find("count"));
}

答案 1 :(得分:0)

?RemoveTokens("AA BB CC DD EE", "BB") AA CC DD EE ?RemoveTokens("AA BB CC DD EE", "BB", "EE", "AA") CC DD 中,如果没有appController函数,请创建它并在其中写下以下内容。

beforeFilter()

现在您可以访问$this->loadModel('User'); $userCount = $this->User->find("count"); $this->set('userCount',$userCount ); 中的$userCount变量或任何其他视图

答案 2 :(得分:0)

您可以在AppController::beforeFilter方法中调用该查询。然后你可以将结果分配给某个变量$this->set('userCounter',$this->User->find("count")) 变量$userCounter可以在任何视图中使用

<?php 
    public function beforeFilter(){
        parent::beforeFilter();
        $this->loadModel('User');
        $this->set('userCounter',$this->User->find("count"));
   }
?>