我目前有一个可以像这样访问数据的模型:
$currentSessionID = session()->getId();
$displayCart = Cart::where('session_id', $currentSessionID)->get();
return view('layouts.cart')->with('cartDetails', $displayCart);
此模型可以正确检索当前会话中的数据。
要在头文件中访问相同的数据,我在AppServiceProvider中使用View :: Share,如下所示:
public funciton boot()
{
$currentSessionID = session()->getId();
$inCartDetails = Cart::where('session_id', $currentSessionID)->get();
View::share('inCartDetails', $inCartDetails);
}
在我的刀片中,$ inCartDetails返回空。我得到[]。 我的怀疑是此功能仅在启动时被调用。因此命名为:),并且它是空的,因为在启动会话时它是空的,因为用户未选择任何内容。如果正确的话,我该如何将实时数据传递给多个视图?
答案 0 :(得分:1)
该会话在服务提供者的引导方法中不可用。您应该为此创建一个中间件。在这里查看答案:How to retrieve session data in service providers in laravel?