通常我们通过检查 sql-dump 来检查 find 操作。但是如果通过ajax完成查询操作是不可能的。我们如何检查在背景中完成的任何 find 操作,以及在 pr() 中打印它的任何方式?
问问题
1064 次
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 回答