This is AdminController.php:
<?php
namespace App\Http\Controllers;
use Response;
use Illuminate\Support\Facades\DB;
use App\Caption;
use App\Image;
use App\Http\Controllers\Controller;
class AdminController extends Controller
{
    public function admin() {
        $images = Image::paginate();
        return view('admin',[ '$images' => $images]);
    }
}
And this is admin.blade.php:
@extends('template')
@section('title')
    Admin Page
@endsection
@section('header')
@endsection
@section('main')
    @if (Auth::check())
        @foreach ($images as $image)
            <p value='{{$image->id}}'>{{$image->content}}</p>
            <form action="image/{{$image->id}}/delete" method="post">
                <button type="submit">Delete caption</button>
            </form> 
            <form action="image/{{$image->id}}/approve" method="post">
                <button type="submit">Accept image</button>
            </form>
        @endforeach
    @else
        <p>Login first</p>
    @endif
@endsection
@section('footer')
@endsection
Why do I get the following error?
ErrorException in 408148d5409ae6eebf768dc5721bd0d1d9af48af.php line 9: Undefined variable: images (View: /Users/sahandz/Documents/School/Singapore/CS3226/backend/resources/views/admin.blade.php)
$imagesis clearly defined in my controller.
You have used $images as your variable name when passing the data to the view. This results in blade creating a variable called $$images.
return view('admin',[ 'images' => $images]);
will result in the view creating a variable called $images
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With