我在@forelse($ services ...)行上收到此错误:
未定义变量:服务(视图: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');
to
Route::get('services', 'HelloController@services');
在routes/web.php
文件中。
PS:您的路线文件中已经有该路线,但该行已注释