laravel 7 中带有 forelse 循环的未定义变量
Undefined variable with forelse loop in laravel 7
我在@forelse($services...) 行收到此错误:
Undefined variable: services (View: C:\xampp\htdocs\website\resources\views\services.blade.php)
错误:https://easyupload.io/yrmnnf)
我在 youtube 上关注 Coder 的选择 Laravel 6 tut 系列,似乎有更多人遇到此问题。
我已经检查了代码 50 次,它与 youtubevideo 相同。
这是我的 services.blade.php:
@extends('app')
@section('title', 'Services')
@section('content')
<h1>Welcome to Laravel 6 from Services</h1>
<ul>
@forelse($services as $service)
<li>{{ $service }}</li>
@empty
<li>No services available.</li>
@endforelse
</ul>
@endsection
这是控制器:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class HelloController extends Controller {
public function about() {
return view('about');
}
public function services() {
$services = [
'Cool Service',
'Another Cool Service',
];
return view('services', compact('services'));
}
}
你的路线是错误的,你只显示一个视图而没有使用你的控制器,所以 $services
根本没有在 services.blade.php
中设置。
改变
Route::view('/services', 'Services');
至
Route::get('services', 'HelloController@services');
在您的 routes/web.php
文件中。
PS:您的路线文件中已有该路线,但该行已被注释
我在@forelse($services...) 行收到此错误:
Undefined variable: services (View: C:\xampp\htdocs\website\resources\views\services.blade.php)
错误:https://easyupload.io/yrmnnf)
我在 youtube 上关注 Coder 的选择 Laravel 6 tut 系列,似乎有更多人遇到此问题。 我已经检查了代码 50 次,它与 youtubevideo 相同。 这是我的 services.blade.php:
@extends('app')
@section('title', 'Services')
@section('content')
<h1>Welcome to Laravel 6 from Services</h1>
<ul>
@forelse($services as $service)
<li>{{ $service }}</li>
@empty
<li>No services available.</li>
@endforelse
</ul>
@endsection
这是控制器:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class HelloController extends Controller {
public function about() {
return view('about');
}
public function services() {
$services = [
'Cool Service',
'Another Cool Service',
];
return view('services', compact('services'));
}
}
你的路线是错误的,你只显示一个视图而没有使用你的控制器,所以 $services
根本没有在 services.blade.php
中设置。
改变
Route::view('/services', 'Services');
至
Route::get('services', 'HelloController@services');
在您的 routes/web.php
文件中。
PS:您的路线文件中已有该路线,但该行已被注释