您知道有什么方法可以像在 CakePHP 中一样显示在 Lithium 中执行的查询吗? 我可能会更容易找到执行的内容。 在页面底部显示执行的查询。
![截图]http://imgur.com/ffNfQ
收到答案后,我将代码添加到我的控制器中:
Volumes::applyFilter('find', function($self, $params, $chain) { echo '<pre>===== self ======<br>'; var_dump($self); echo '===== params ======<br>'; var_dump($params); echo '===== chain ======<br>'; var_dump($chain); echo '</pre>'; $next = $chain->next($self, $params, $chain); return $next; });
它为我提供了有关 self 和 params 的所有 var_dump 的输出,但我需要执行的 SQL 查询。
请查看屏幕截图http://imgur.com/ffNfQ
P粉0527243642024-03-27 11:04:16
正如 @Nils 所建议的,您可以利用 Lithium 过滤器并编写一个简单的查询记录器。
我在这里做了一个。它将 read
查询记录到 product
环境中的文件中。
您应该能够对 create
、update
和 delete
操作进行自定义和添加过滤器以满足您的需求。
如果您正在寻找开箱即用的解决方案,例如 Cake 的调试工具栏,请检查 li3_perf
项目: https://github.com/tmaiaroto/li3_perf
P粉3229187292024-03-27 10:40:33
根据 Nils 和 Mehdi 的所有建议,我创建了一个新插件,它仅显示查询结果,而不显示使用 MongoDB 在 Lithium 中执行的查询的 vardump 或 print_r()。
现在我真的更容易找到它正在执行的内容。
您可以在 Github 上查看该项目:
https://github.com/nilamdoc/li3_show