Как я могу передать две переменные в представление? - PullRequest
1 голос
/ 09 июля 2019

Я хочу передать две переменные в представление, чтобы я мог получить данные из базы данных.

Я пытался поместить оба в одну строку, но это не сработало. И у меня эта ошибка:

Неопределенная переменная: utilizadores (Просмотр: C: \ Users \ ACC \ Desktop \ Projeto \ акк \ Resources \ вид \ 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 в представление?

Ответы [ 5 ]

3 голосов
/ 09 июля 2019

Возвращает массив с обоими значениями:

return view('gestaoutilizadores', ['utilizadores'=>$utilizadores, 'users'=>$users]);
1 голос
/ 09 июля 2019

Всякий раз, когда вы 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]);
}
0 голосов
/ 09 июля 2019

Попробуйте, вы можете использовать компактный

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'));
}
0 голосов
/ 09 июля 2019

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'); 
 }
0 голосов
/ 09 июля 2019
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]);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...