我创建了一个名为AdminServiceProvider服务提供商Laravel 5.4:将自定义服务提供商控制器
namespace App\Providers;
use Modules\Orders\Models\Orders;
use Illuminate\Support\ServiceProvider;
use View;
class AdminServiceProvider extends ServiceProvider
{
public function boot()
{
$comments = Orders::get_new_comments();
View::share('comments', $comments);
}
public function register()
{
}
}
注册的供应商
App\Providers\AdminServiceProvider::class,
现在,我尝试将它连接到控制器
namespace App\Http\Controllers\admin;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Providers\AdminServiceProvider;
class AdminController extends Controller
{
public $lang;
public function __construct()
{
}
public function index(){
return view('admin/dashboard');
}
}
现在我得到这个错误信息
Undefined variable: comments
这是我第一次尝试使用自定义服务提供程序,但不知道它是如何工作的我确信有一些缺失希望您可以提供帮助。提前致谢。
[UPDATE]
除去使用应用\提供商\ AdminServiceProvider;从控制器
PHP工匠明确编译的解决了这个问题,但我想它附加到某些控制器不是所有的控制器为$意见在我的应用程序发送给所有contollers。那么如何将服务提供者附加到特定的控制器上,而不是全部?
PHP工匠明确编译的解决了这个问题,但我想它附加到某些控制器不是所有的控制器 –
检查修改答案 – Sletheren