事件::听不抓laravel.query

时间:2014-08-17 23:22:37

标签: events laravel laravel-4

我对Laravel很新。我正在研究REST api,并试图查看从模型生成的查询。在我的路线中,我设置了一个路线组。

Route::(["before" => "auth", function()
{
    Route::model("juror_subject", "JurorSubject");

    Route::get("juror_subject", [
        "as"    => "juror_subject/index"
        "uses"  => "JurorSubjectController@index"
    ]);
});

我想查看实际运行的查询。我正在观看Jeffrey Way的视频,他提到你可以使用Event :: listen来查看这样的查询。

在路线中:

Event::listen('laravel.query', function($sql){
    var_dump($sql);
});

但是,当我加载网址时:

localhost:8080/api/juror_subject

它返回json响应,似乎永远不会触发laravel.query事件。

我是否缺少一些让事件监听器正常工作所需的元素?我使用的路由类型是否未触发查询?如果是这样,我将如何使用路由组转储查询?

1 个答案:

答案 0 :(得分:0)

laravel.query适用于Laravel 3,请使用illuminate.query,另请查看此answer以获取更多详细信息。 此外,调用DB::getQueryLog()来获取所有运行的查询(不需要监听器),或使用非常整洁的this包。