PHP Laravel - возвращение представления из подкаталога - PullRequest
0 голосов
/ 30 сентября 2018

Я пытаюсь вернуть представление из подкаталога, однако при использовании кода ниже я получаю сообщение об ошибке «Неопределенная переменная: папка1»

Route::get('/', function () {
return view("folder1/page1");
});

или

Route::get('/', function () {
return view("/folder1/page1");
});

или

Route::get('/', function () {
return view("folder1.page1");
});

Представление "page1" находится в папке с именем folder1, например ...

Как вы возвращаете представление, которое не находится в том же каталоге?

Ответы [ 3 ]

0 голосов
/ 30 сентября 2018

вы можете попробовать, как показано ниже

Route::get('/', function () {
   return view("folder1.page1",compact('products'));
});
0 голосов
/ 30 сентября 2018

В laravel по умолчанию представления хранятся в каталоге resources/views.Ваш взгляд, файл page1.blade.php находится в каталоге resources/views/folder1.Чтобы вернуть представление, мы можем использовать глобальный помощник view следующим образом:

return view('folder1.page1');

. Для вашего случая выше, вы можете сделать это

Route::get('/',function(){
  return view('folder1.page1');
});

Если вы хотите передать данныев представлении есть много способов сделать это, вы можете использовать это

$data1= 'Sample data 1';
return view('folder1.page1',['data1'=>$data1]);

Или

$data1 = 'Sample data 1';
returnn view('folder1.page1')->with('data1',$data1);

Или

$data1 = 'Sample data 1';
return view('folder1.page1')->compact('data1');
0 голосов
/ 30 сентября 2018

Проблема не в самом представлении, а в том, что вы не передаете переменную view $product, которую он использует в представлении для визуализации данных из продукта / продуктов.

Попробуйтекак то так:

Router::get('/', function() {
  return view('folder1.page1', ['products' => App\Product::all()]);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...