有没有办法看到CDbCriteria正在执行查询?
答案 0 :(得分:1)
我个人在我的配置文件protected/config/main.php
// SQL Commands
array(
'class'=>'CFileLogRoute',
'maxFileSize' => 30720,
'maxLogFiles' => 10,
'rotateByCopy' => true,
'levels'=>'trace,info,error,warning',
'logFile'=>'sql.log',
'categories'=>'system.db.CDbCommand'
),
参考: http://www.yiiframework.com/doc/guide/1.1/en/topics.logging
注意categories
索引:http://www.yiiframework.com/doc/api/1.1/CLogRoute#categories-detail
类别数组,或以逗号或空格分隔的字符串列表。 默认为空数组,表示所有类别。
CDbCriteria
本身不执行查询,它会传递给其他类,如CActiveDataProvider
或类似find()
等等,最后会调用CDbCommand
。所以我们只记录那个类别。
我对术语不太满意,希望你能得到它。