所以我想創建我的第一個服務提供商和免費Facade在Laravel。Laravel 5.2什麼在外觀getFacadeAccessor返回
服務提供商:
<?php namespace Jbm\Providers;
use Illuminate\Contracts\Http\Kernel;
use Illuminate\Http\Request;
use Illuminate\Support\ServiceProvider as BaseServiceProvider;
use Jbm\Helpers\ReportGenerator;
class ReportGeneratorServiceProvider extends BaseServiceProvider
{
/**
* Indicates if loading of the provider is deferred.
*
* @var bool
*/
protected $defer = true;
/**
* Register the service provider.
*
* @return void
*/
public function register()
{
$this->app->bind('Jbm\Helpers\Contracts\ReportGeneratorContract', function($app){
return new ReportGenerator();
});
}
/**
* Add the Cors middleware to the router.
*
* @param Kernel $kernel
*/
public function boot(Request $request, Kernel $kernel)
{
//
}
/**
* Get the services provided by the provider.
*
* @return array
*/
public function provides()
{
return array('jbm.reportGenerator');
}
}
門面:
似乎每包我看事情處理方式不同。我感到困惑的一件事是在門面迴歸getFacadeAccessor()
應該是什麼。在我的服務提供商中,我說它提供jbm.reportGenerator
,然後在Facade中使用它,但我不知道如何連接到我已註冊的內容。任何幫助將不勝感激。
更新:
我決定將我的服務提供商和我的門面,以我的配置/ app.php,然後試圖在控制器使用它,它說:「報告生成未找到」。因此,它顯然是不工作...不知道爲什麼
更新2:
的名字,現在我得到Call to undefined method Jbm\Facades\ReportGenerator::parseConfig()
取出後點。
你可以嘗試將jbm.reportGenerator重命名爲reportGenerator嗎?我不確定你是否可以使用像這樣的點 –