我想将两个变量传递给视图,以便可以从数据库中获取数据。
我试图将两者放在同一行,但是没有用。而且我遇到了这个错误:
未定义变量:utilizadores(查看: C:\ Users \ ACC \ Desktop \ projeto \ acc \ resources \ views \ gestaoutilizadores.blade.php)
因为它仅发送变量$users
,然后返回视图。
这是我的代码:
public function gestaoutilizadores(){
$users = DB::select('select * FROM `users` WHERE 1');
return view('gestaoutilizadores',['users'=>$users]);
$utilizadores = DB::select('select * FROM `utilizadores` WHERE 1');
return view('gestaoutilizadores',['utilizadores'=>$utilizadores]);
}
如何将变量$users
和$utilizadores
传递给视图?
答案 0 :(得分:3)
返回包含两个值的数组:
return view('gestaoutilizadores', ['utilizadores'=>$utilizadores, 'users'=>$users]);
答案 1 :(得分:1)
每当您return
进行某些操作时,函数调用都会在此停止并返回您告诉的内容。
您需要将数据返回到单个数组中,该数组可以设置为保存数据的变量(如果您有很多需要返回到视图的变量,则读取起来会更干净一些)。然后使用$data
变量作为view()
的第二个参数返回视图。
public function gestaoutilizadores() {
$data = [];
$users = DB::select('select * FROM `users` WHERE 1');
$utilizadores = DB::select('select * FROM `utilizadores` WHERE 1');
$data['users'] = $users;
$data['utilizadores'] = $utilizadores;
return view('gestaoutilizadores', $data);
}
尽管您也可以通过
进行内联public function gestaoutilizadores() {
$users = DB::select('select * FROM `users` WHERE 1');
$utilizadores = DB::select('select * FROM `utilizadores` WHERE 1');
return view('gestaoutilizadores', ['users' => $users, 'utilizadores' => $utilizadores]);
}
答案 2 :(得分:0)
public function gestaoutilizadores(){
$users = DB::select('select * FROM `users` WHERE 1');
$utilizadores = DB::select('select * FROM `utilizadores` WHERE 1');
return view('gestaoutilizadores',['utilizadores'=>$utilizadores, 'users'=>$users]);
}
答案 3 :(得分:0)
https://laravel.com/docs/4.2/responses#views
您可以尝试
gestaoutilizadores(){
$users = DB::select('select * FROM users WHERE 1');
$utilizadores = DB::select('select * FROM utilizadores WHERE 1');
return view('gestaoutilizadores', ['utilizadores'=>$utilizadores, 'users'=>$users]);
}
gestaoutilizadores(){
$users = DB::select('select * FROM users WHERE 1');
$utilizadores = DB::select('select * FROM utilizadores WHERE 1');
return view('gestaoutilizadores', compact ('utilizadores', 'users');
}
答案 4 :(得分:0)
尝试一下 您可以使用紧凑型
public function gestaoutilizadores(){
$users = DB::select('select * FROM `users` WHERE 1');
$utilizadores = DB::select('select * FROM `utilizadores` WHERE 1');
return view('gestaoutilizadores',compact('users', 'utilizadores'));
}