我必須將多個表信息傳遞給Laravel。我總是這樣做:將信息從多個表傳遞給模板使用Laravel
public function get_view(){
$myinfo = Table::where('id',Auth::user()->id)->get();
return view('auth.view')->with('myinfo',$myinfo);
}
我需要從其他表傳遞信息。函數「with」只允許我傳遞一個表。有沒有辦法做到這一點?
我必須將多個表信息傳遞給Laravel。我總是這樣做:將信息從多個表傳遞給模板使用Laravel
public function get_view(){
$myinfo = Table::where('id',Auth::user()->id)->get();
return view('auth.view')->with('myinfo',$myinfo);
}
我需要從其他表傳遞信息。函數「with」只允許我傳遞一個表。有沒有辦法做到這一點?
選項1:
return view('auth.view')->with('myinfo', $myinfo)->with('anotherVar', $anotherVar);
選項2:
$var1, $var2;
return view('auth.view', compact('var1', 'var2'));
其轉換爲(選項3):
$var1, $var2;
return view('auth.view', ['var1' => $var1, 'var2' => $var2]);
可以傳遞一個數組具有多個表作爲第二個參數:
public function get_view() {
$myinfo = Table::where('id', Auth::user()->id)->get();
return view('auth.view', [
'myinfo1' => $table1,
'myinfo2' => $table2,
]);
}
此外,您可以使用多個with()
有一種方法緊湊。你的例子:
public function get_view(){
$myinfo = Table::where('id',Auth::user()->id)->get();
$myinfo2 = ...
return view('auth.view', compact('myinfo', 'myinfo2'));
}