Laravel – 通过多个variables来查看

我有这个网站,其中一个页面创build了一个简单的数据库中的人名单。 我需要添加一个特定的人到我可以访问的variables。

如何修改return $view->with('persons', $persons); 行也通过$毫秒variables的视图?

  function view($view) { $ms = Person::where('name', 'Foo Bar'); $persons = Person::order_by('list_order', 'ASC')->get(); return $view->with('persons', $persons); } 

只要把它作为一个数组传递:

 $data = array( 'name' => 'Raphael', 'age' => 18, 'email' => 'r.mobis@rmobis.com' ); return View::make('user')->with($data); 

或者像@Antonio提到的那样链接它们。

这是你如何做到的:

 function view($view) { $ms = Person::where('name', '=', 'Foo Bar')->first(); $persons = Person::order_by('list_order', 'ASC')->get(); return $view->with('persons', $persons)->with('ms', $ms); } 

你也可以使用compact() :

 function view($view) { $ms = Person::where('name', '=', 'Foo Bar')->first(); $persons = Person::order_by('list_order', 'ASC')->get(); return $view->with(compact('persons', 'ms')); } 

或者在一行中做:

 function view($view) { return $view ->with('ms', Person::where('name', '=', 'Foo Bar')->first()) ->with('persons', Person::order_by('list_order', 'ASC')->get()); } 

甚至把它作为一个数组发送:

 function view($view) { $ms = Person::where('name', '=', 'Foo Bar')->first(); $persons = Person::order_by('list_order', 'ASC')->get(); return $view->with('data', ['ms' => $ms, 'persons' => $persons])); } 

但是,在这种情况下,您将不得不以这种方式访问​​它们:

 {{ $data['ms'] }} 

使用紧凑

 function view($view) { $ms = Person::where('name', '=', 'Foo Bar')->first(); $persons = Person::order_by('list_order', 'ASC')->get(); return View::make('users', compact('ms','persons')); } 

将多个variables传递给Laravel视图

 //Passing variable to view using compact method $var1=value1; $var2=value2; $var3=value3; return view('viewName', compact('var1','var2','var3')); //Passing variable to view using with Method return view('viewName')->with(['var1'=>value1,'var2'=>value2,'var3'=>'value3']); //Passing variable to view using Associative Array return view('viewName', ['var1'=>value1,'var2'=>value2,'var3'=>value3]); 

在这里阅读关于将数据传递给Laravel中的视图

遇到类似的问题,但如果你不一定要返回视图与视图文件,你可以这样做:

 return $view->with(compact('myVar1', 'myVar2', ..... , 'myLastVar'));