动态隐藏 Laravel barryvdh 调试栏
Dynamically hide Laravel barryvdh debugbar
我无法动态隐藏 Laravel Debugbar,即在 运行 时间。我已经从父控制器 class 构造函数中尝试了以下内容:
<?php
namespace App\Http\Controllers;
class Controller extends BaseController {
use AuthorizesRequests,
DispatchesJobs,
ValidatesRequests;
public $foo = 'null';
public function __construct() {
\Debugbar::disable();
// and also
config(['debugbar.enabled' => false]);
....
以上尝试全部失败。我想提一下控制器是所有其他控制器的父控制器 classes.
唯一的工作方式不是动态方式,我必须手动更改配置。我不知道为什么覆盖配置不能作为 documentation states?
没有看到您的所有代码,您的代码应该可以工作。以下是我如何配置我的在本地环境中工作并根据特定请求禁用它。
AppServiceProvider
use Barryvdh\Debugbar\ServiceProvider as DebugbarServiceProvider;
...
public function register()
{
if ($this->app->environment('local')) {
$this->app->register(DebugbarServiceProvider::class);
}
}
我想禁用的地方我放了。
use Barryvdh\Debugbar\Facade as Debugbar;
...
if (App::environment('local')) {
Debugbar::disable();
}
根据评论更新
你为什么要像这样在你的路由文件中放一些东西。
use Barryvdh\Debugbar\Facade as Debugbar;
...
Route::group(array('domain' => 'admin.example.com'), function()
{
Debugbar::disable();
});
我无法动态隐藏 Laravel Debugbar,即在 运行 时间。我已经从父控制器 class 构造函数中尝试了以下内容:
<?php
namespace App\Http\Controllers;
class Controller extends BaseController {
use AuthorizesRequests,
DispatchesJobs,
ValidatesRequests;
public $foo = 'null';
public function __construct() {
\Debugbar::disable();
// and also
config(['debugbar.enabled' => false]);
....
以上尝试全部失败。我想提一下控制器是所有其他控制器的父控制器 classes.
唯一的工作方式不是动态方式,我必须手动更改配置。我不知道为什么覆盖配置不能作为 documentation states?
没有看到您的所有代码,您的代码应该可以工作。以下是我如何配置我的在本地环境中工作并根据特定请求禁用它。
AppServiceProvider
use Barryvdh\Debugbar\ServiceProvider as DebugbarServiceProvider;
...
public function register()
{
if ($this->app->environment('local')) {
$this->app->register(DebugbarServiceProvider::class);
}
}
我想禁用的地方我放了。
use Barryvdh\Debugbar\Facade as Debugbar;
...
if (App::environment('local')) {
Debugbar::disable();
}
根据评论更新
你为什么要像这样在你的路由文件中放一些东西。
use Barryvdh\Debugbar\Facade as Debugbar;
...
Route::group(array('domain' => 'admin.example.com'), function()
{
Debugbar::disable();
});