我无法动态地隐藏 laravel debugbar ,即在运行时间上。我尝试了Parent Controller类构造函数的以下内容:
<?php
namespace AppHttpControllers;
class Controller extends BaseController {
use AuthorizesRequests,
DispatchesJobs,
ValidatesRequests;
public $foo = 'null';
public function __construct() {
Debugbar::disable();
// and also
config(['debugbar.enabled' => false]);
....
上述所有尝试都失败了。我想提一下,控制器是所有其他控制器类的父控制器。
唯一的工作方式不是动态方式,我必须手动更改配置。我不知道为什么覆盖配置不起作用,因为文档状态?
而没有看到所有代码,就应该起作用。这是我如何配置我在本地环境中工作并通过特定请求将其禁用。
AppServiceProvider
use BarryvdhDebugbarServiceProvider as DebugbarServiceProvider;
...
public function register()
{
if ($this->app->environment('local')) {
$this->app->register(DebugbarServiceProvider::class);
}
}
我想禁用的地方。
use BarryvdhDebugbarFacade as Debugbar;
...
if (App::environment('local')) {
Debugbar::disable();
}
更新每个注释
为什么在这样的路线文件中放一些东西。
use BarryvdhDebugbarFacade as Debugbar;
...
Route::group(array('domain' => 'admin.example.com'), function()
{
Debugbar::disable();
});