«Неопределенная константа / переменная» Ошибка в Laravel … Невозможно показать переменную в лезвии

Я использую laravel, у меня есть переменная в контроллере панели управления (которая расширяет базовый контроллер) определяется следующим образом:

Контроллер панели приборов:

public function dashboardData(){ $toReturn = array(); $toReturn['siteTitle'] = $this->data['panelInit']->settingsArray['siteTitle']; //------other things-----------// $toReturn['stats'] = array(); //------some other things-----------// $toReturn['stats']['recieved'] = messagesList::where('userId',$this->data['users']->id)->where('messageStatus',1)->count(); 

Эта переменная отображается в моем основном (индекс / по умолчанию / home / what you call it) html-шаблоне с использованием синтаксиса {{}} следующим образом:

Шаблон HTML

  <div class="counter"> <div class="informational">{{dashboardData.stats.recieved}}</div> </div> 

и он полностью показывает результат, который я ожидаю …. но я хочу показать эти же данные в макете, который я использую … Я использую ту же структуру html в layout.blade (каталог: / app / views ) с {{dashboardData.stats.recieved}}, но я получаю ошибки « Undefined Constant » и « undefined Variable » …

Ниже приводится обзор моих маршрутов.php: –

routes.php

 Route::group(array('prefix'=>'/','before'=>'auth.Ui|auth.token|api.csrf'),function(){ Route::get('/','DashboardController@index'); Route::get('/dashboard','DashboardController@dashboardData'); Route::get('/dashboard/baseUser','DashboardController@baseUser'); //-------------some things-------------// Route::post('/dashaboard','DashboardController@dashaboardData'); 

Я совершенно новый на laravel, я наткнулся на «view :: share» и «view: make», но не совсем понял, как сделать это отлично и безопасно без единой ошибки … У меня также есть библиотеки в "/app/libraries/initiation.php", который отражает некоторые данные в layout.blade …. Как показать данные {{dashboardData.stats.recieved}} в layout.blade без ошибок " Undefined Constant "и" undefined Variable "… ??? а также то, что было бы самым правильным, практичным и, самое главное, безопасным способом сделать это … ???

Вы неправильно используете переменные в шаблоне Blade .

замещать

 {{dashboardData.stats.recieved}} 

с

 {{$dashboardData['stats']['recieved']}} 

Убедитесь, что вы передаете переменную в представление с вашего контроллера:

 public function dashboardData() { // your logic that generates $toReturn array return view('your_view')->with('dashboardData', $toReturn); }