laravel 7中带有前循环的未定义变量

问题描述 投票:0回答:1

我在@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'));
    }
}
laravel for-loop variables undefined laravel-blade
1个回答
1
投票

您的路线有误,您仅在不使用控制器的情况下显示视图,因此在$services中根本没有设置services.blade.php

更改

Route::view('/services', 'Services');

to

Route::get('services', 'HelloController@services');

routes/web.php文件中。

PS:您的路线文件中已经有该路线,但该行已注释

© www.soinside.com 2019 - 2024. All rights reserved.