我有一份联赛名单,我正在传递给这样的观点......
$leagues = League::lists('name', 'id');
return View::make('gameworlds.create')->with('leagues', $leagues);
我想要做的是传递另一个列表,例如国家/地区,但我不确定如何这样做。
e.g。
$leagues = League::lists('name', 'id');
$countries = Country::lists('name', 'id');
return View::make('gameworlds.create')->with('leagues', $leagues ... ... ... );
我怎样才能追加$ country? 我已经看到将$ data创建为一个数组,但同样,并不完全确定如何设置它。
有人可以提出建议吗?
DS
答案 0 :(得分:3)
所有这些答案都是正确的,但没有人给你最好,最简单,最易阅读的版本:
// get data
$leagues = League::lists('name', 'id');
$countries = Country::lists('name', 'id');
// render view and pass data in
return View::make('gameworlds.create', compact('leagues', 'countries'));
需要考虑的事项:
View::make()
的第二个参数传递给我的视图,但您仍然可以使用->with(compact(...))
答案 1 :(得分:2)
非常简单,只需添加多个“with”元素:
$leagues = League::lists('name', 'id');
$countries = Country::lists('name', 'id');
return View::make('gameworlds.create')->with('leagues', $leagues)->with('countries', $countries);
答案 2 :(得分:1)
你可以这样做
$leagues = League::lists('name', 'id');
$countries = Country::lists('name', 'id');
$data['leagues'] = $leagues;
$data['countries'] = $countries;
return View::make('gameworlds.create')->with($data);
与trizz所说的相反,您可以从Array索引的名称访问View中的变量。 意味着您可以通过$ leagues / $国家/地区访问它们,例如多个语句
答案 3 :(得分:1)
你可以试试这个
return View::make('gameworlds.create')
->with('leagues', $leagues)
->with('countries', $countries); // more withs could be added
或者这也是
$array = array('leagues' => $leagues, 'countries' => $countries);
return View::make('gameworlds.create', $array);
或使用快捷array
语法
return View::make('gameworlds.create', ['leagues' => $leagues, 'countries' => $countries]);
或使用compact
$leagues = League::lists('name', 'id');
$countries = Country::lists('name', 'id');
return View::make('gameworlds.create', compact('leagues', 'countries'));
答案 4 :(得分:0)
return View::make('gameworlds.create')->with(array('leagues'=>$leagues,'countries'=> $countries));