未定义的变量:title(查看:C:\ xampp \ htdocs \ myproject \ resources \ views \ categories \ index.blade.php)

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

我尝试制作一个页面index.blade,但我收到错误

未定义的变量:title(查看:C:\ xampp \ htdocs \ myproject \ resources \ views \ categories \ index.blade.php)

我正在使用laravel 5.4 PHP 7.0.33代码有什么问题吗?

我的控制器

<?php

namespace App\Http\Controllers;
use App\Category;

use Illuminate\Http\Request;

class CategoryController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        $categories = Category::orderBy('created_at', 'DESC')->paginate(10);
        return view('categories.index', compact('categories'));//
    }

我的index.blade这是我的视图/ categories / index.blade.php

@extends('layout.master')
​
@section('title')
    <title>Manajemen Kategori</title>
@endsection
​
@section('content')
    <div class="content-wrapper">
        <div class="content-header">
            <div class="container-fluid">
                <div class="row mb-2">
                    <div class="col-sm-6">
                        <h1 class="m-0 text-dark">Manajemen Kategori</h1>
                    </div>
                    <div class="col-sm-6">
                        <ol class="breadcrumb float-sm-right">
                            <li class="breadcrumb-item"><a href="#">Home</a></li>
                            <li class="breadcrumb-item active">Kategori</li>
                        </ol>
                    </div>
                </div>
            </div>
        </div>
​
        <section class="content">
            <div class="container-fluid">
                <div class="row">
                    <div class="col-md-4">
                        @card
                            @slot('title')
                            <div class="card">
                                <div class="card-header with-border">
                                 <h3 class="card-title">{{ $title }}</h3>
                            </div>
                            <div class="card-body">
                                {{ $slot }}
                            </div>
                                {{ $footer }}
                            </div>
                            @endslot

                            @if (session('error'))
                                @alert
                                <div class="alert alert-{{ $type }} alert-dismissible">
                                    {{ $slot }}
                                </div>
                                @endalert
                            @endif
​
                            <form role="form" action="{{ route('kategori.store') }}" method="POST">
                                @csrf
                                <div class="form-group">
                                    <label for="name">Kategori</label>
                                    <input type="text" 
                                    name="name"
                                    class="form-control {{ $errors->has('name') ? 'is-invalid':'' }}" id="name" required>
                                </div>
                                <div class="form-group">
                                    <label for="description">Deskripsi</label>
                                    <textarea name="description" id="description" cols="5" rows="5" class="form-control {{ $errors->has('description') ? 'is-invalid':'' }}"></textarea>
                                </div>
                            @slot('footer')
                                <div class="card-footer">
                                    <button class="btn btn-primary">Simpan</button>
                                </div>
                            </form>
                            @endslot
                        @endcard
                    </div>
                    <div class="col-md-8">
                        @card
                            @slot('title')
                            List Kategori
                            @endslot

                            @if (session('success'))
                                @alert(['type' => 'success'])
                                    {!! session('success') !!}
                                @endalert
                            @endif

                            <div class="table-responsive">
                                <table class="table table-hover">
                                    <thead>
                                        <tr>
                                            <td>#</td>
                                            <td>Kategori</td>
                                            <td>Deskripsi</td>
                                            <td>Aksi</td>
                                        </tr>
                                    </thead>
                                    <tbody>
                                        @php $no = 1; @endphp
                                        @forelse ($categories as $row)
                                        <tr>
                                            <td>{{ $no++ }}</td>
                                            <td>{{ $row->name }}</td>
                                            <td>{{ $row->description }}</td>
                                            <td>
                                                <form action="{{ route('kategori.destroy', $row->id) }}" method="POST">
                                                    @csrf
                                                    <input type="hidden" name="_method" value="DELETE">
                                                    <a href="{{ route('kategori.edit', $row->id) }}" class="btn btn-warning btn-sm"><i class="fa fa-edit"></i></a>
                                                    <button class="btn btn-danger btn-sm"><i class="fa fa-trash"></i></button>
                                                </form>
                                            </td>
                                        </tr>
                                        @empty
                                        <tr>
                                            <td colspan="4" class="text-center">Tidak ada data</td>
                                        </tr>
                                        @endforelse
                                    </tbody>
                                </table>
                            </div>
                            @slot('footer')
​
                            @endslot
                        @endcard
                    </div>
                </div>
            </div>
        </section>
    </div>
@endsection

我的路线web.php

Route::resource('/kategori', 'CategoryController', 
                ['except' => ['create', 'show']]);
laravel model-view-controller laravel-5.4 php-7.0
2个回答
3
投票

它应该是这样的

public function index()
{
    $categories = Category::orderBy('created_at', 'DESC')->paginate(10);
    $title = ''; //your title
    return view('categories.index', compact('categories','title'));
}

因为标题没有从控制器获得价值。


0
投票

您没有将变量标题传递给视图添加如下:

$title = 'Your title'; return view('categories.index', compact('categories','title'));

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