【问题标题】:Laravel Lumen 5.7, debugbar throw Call to a member function listen on nullLaravel Lumen 5.7,调试栏抛出调用成员函数监听 null
【发布时间】:2020-12-03 02:03:37
【问题描述】:

我正在尝试将调试栏与 lumen 和 jenssegers/laravel-mongodb 一起使用,它没有显示数据库查询,所以我启用了。

\DB::connection('mongodb')->enableQueryLog();

但是现在它显示了这个错误。

`null 时调用成员函数listen()

在 LaravelDebugbar.php 第 354 行`

另外,它只在主页 URL / 上显示调试栏,除了主页 URL,它不显示调试栏。

没有 \DB::connection('mongodb')->enableQueryLog();或 \DB::enableQueryLog();它呈现,但不显示数据库查询信息,并且仅适用于主页。

谢谢

【问题讨论】:

  • 您是否确定您的 mongo db 在没有调试栏的情况下实际运行...因为您收到的错误是因为应用程序的服务容器对 'db' 的绑定为空...
  • @KurtFriars 是的,工作正常,没有 laravel 调试栏,它只会在我启用时引发错误 without \DB::connection('mongodb')->enableQueryLog();或 \DB::enableQueryLog();在 bootstrap/app.php
  • 如果您查看here,您会看到它正在尝试从容器中解析数据库,这就是listen 被调用的原因。所以我不知道为什么 debugbar 不能解决它,但是你的应用会...

标签: php laravel mongodb lumen phpdebugbar


【解决方案1】:

你把\DB::connection('mongodb')->enableQueryLog();放在哪里?

根据这个issue on a master debugbar,你需要在AppServiceProvider.phpboot()函数上调用它。你试过吗?

如果以上方法不起作用,请在debugbar issues 上搜索帮助,因为我认为问题出在插件上,而不是您的代码上。还有很多Mongo 问题,一定要先看看那里。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-08-08
    • 2016-09-17
    • 2019-12-04
    • 1970-01-01
    • 2021-01-26
    • 1970-01-01
    • 2016-09-04
    • 2016-06-29
    相关资源
    最近更新 更多