如何使用Laravel query Builder或Eloquent ORM检索Laravel 3/4中的原始执行SQL查询?
例如,如下所示:
DB::table('users')->where_status(1)->get();
或者:
(posts (id, user_id, ...))
User::find(1)->posts->get();
否则,至少我如何将执行的所有查询保存到laravel.log?
发布于 2014-07-25 12:32:21
对于Eloquent,你可以这样做:
$result->getQuery()->toSql();
但是您需要从查询中删除"->get()“部分。
发布于 2013-03-19 00:18:45
对于Laraver 4来说
DB::getQueryLog()
发布于 2013-09-30 10:09:30
这是一个快速的Javascript代码片段,您可以将其添加到母版页模板中。只要包含它,所有查询都将输出到浏览器的Javascript控制台。它将它们打印在一个易于阅读的列表中,使浏览您的站点和查看每个页面上执行的查询变得简单。
完成调试后,只需将其从模板中删除即可。
<script type="text/javascript">
var queries = {{ json_encode(DB::getQueryLog()) }};
console.log('/****************************** Database Queries ******************************/');
console.log(' ');
queries.forEach(function(query) {
console.log(' ' + query.time + ' | ' + query.query + ' | ' + query.bindings[0]);
});
console.log(' ');
console.log('/****************************** End Queries ***********************************/');
</script>
https://stackoverflow.com/questions/14536165
复制相似问题