я создал метод для обмена данными со всеми видами моего приложения.
Для этого я создал класс EntityRepository, в котором я храню данные, которыми хочу поделиться со всеми представлениями.
Эти данные отображаются в макете, а не в представлении.
class EntityRepository
{
use App\Valuechain;
public function getEntities()
{
$vcs = Valuechain::select('valuechains.id', 'lang_valuechain.vcname', 'lang_valuechain.vcshortname')
->join('lang_valuechain', 'valuechains.id', '=', 'lang_valuechain.valuechain_id')
->join('langs', 'lang_valuechain.lang_id', '=', 'langs.id')
->where('langs.isMainlanguage', '=', '1')
->whereNull('valuechains.deleted_at')
->get();
return $vcs;
}
}
Когда я хочу отправить данные в методы, я просто вызываю метод getEntities ()... Например:
public function index(EntityRepository $vcs)
{
$entitiesLists = $vcs->getEntities();
// My code here ...
return view('admin.pages.maps.sectors.index', compact('entitiesLists', 'myVars'));
}
В этом конкретном случае он работает нормально, и у меня нет проблем.Моя проблема касается целевой страницы после входа в систему.
В loginController:
Я определил переменную redirectTo следующим образом:
public $redirectTo = '/admin/home';
По конкретным причинам мне пришлось переопределить authentificated ()метод в LoginController, чтобы проверить, сконфигурировано ли мое приложение или его нужно настроить ...
protected function authenticated(Request $request, $user)
{
$langCount = Lang::count();
if ($langCount == 0) {
return redirect()->to('admin/setup/lang');
}
else {
//return redirect()->to('admin/home');
return redirect()->action('BackOffice\StatsController@index');
}
}
Соответствующий метод index () отправляет переменную в представление:
public function index(EntityRepository $vcs)
{
$entitiesLists = $vcs->getEntities();
return view('admin.home', compact('entitiesLists'));
}
Независимо от того, что я получаю, у меня появляется сообщение об ошибке ...
Неопределенная переменная: entityLists (Просмотр: C: \ wamp64 \ www \ network-dev \ resources \ views \ admin \ partials \ header-hor-menu.blade.php)