1

通常我们通过检查 sql-dump 来检查 find 操作。但是如果通过ajax完成查询操作是不可能的。我们如何检查在背景中完成的任何 find 操作,以及在 pr() 中打印它的任何方式?

4

2 回答 2

0

因此,要查找查询,您必须按照以下步骤操作

1- 现在去 cake 文件夹并找到这个路径 cake\libs\model\datasources\dbo\dbo_mysql.php

2-找到函数_execute。该函数负责 cakephp 从其函数中执行的所有查询。

3-调试 $sql 变量,如

function _execute($sql) {
            echo $sql;
        return mysql_query($sql, $this->connection);
    }

4- 死掉cakephp后台检索功能后的代码。喜欢

$referral = $this->find('first', array(
            'conditions' => array('Referral.id' => $id)
        ));
die();

5-如果这是 ajax 调用,您可以在 firebug 中查看查询。

注意:最后显示的查询将是您死前的愿望查询

于 2012-05-21T10:12:49.860 回答
0

如果您提供$this->layout='ajax'控制器代码,则它不会显示查询。因此,如果您想查看查询,只需将布局设置为您的正常布局(仅用于测试)并检查查询,然后还原代码。

于 2012-05-21T05:36:03.570 回答