I try to made a crud but I found this error :
Undefined variable: playlists (View: C:\xampp\htdocs\laravel53\resources\views\pages\playlist\index.blade.php)
create is working... but index no...
I am using laravel 5.4
and this is my controller :
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Http\Requests;
use Auth,
Response,
Storage,
Session,
Redirect,
Validator,
Image,
Input;
use App\Playlist;
class PlaylistsController extends Controller {
public function index() {
$playlists = Playlist::all();
return View('pages.playlist.index')->withPlaylists($playlists);
}
public function create() {
return view('pages.playlist.create');
}
public function store(\Illuminate\Http\Request $request) {
$this->validate($request, [
'title' => 'required',
'description' => 'required',
'authors' => 'required',
'date' => 'required',
'url' => 'required',
'menssage' => 'required',
]);
$input = $request->all();
Playlist::create($input);
Session::flash('flash_message', 'Video/img successfully added!');
return view('admin');
}
public function show($id) {
$playlists = Playlist::findOrFail($id);
return view('pages.playlist.show')->withPlaylits($playlists);
}
public function edit($id) {
$playlists = Playlist::findOrFail($id);
return view('pages.playlist.edit')->withPlaylits($playlists);
}
public function update(Request $request, $id) {
$playlists = Playlist::findOrFail($id);
$this->validate($request, [
'title' => 'required',
'description' => 'required',
'authors' => 'required',
'date' => 'required',
'url' => 'required',
'menssage' => 'required',
]);
$input = $request->all();
$playlists ->fill($input)->save();
Session::flash('flash_message', 'Task successfully added!');
return redirect()->back();
}
public function destroy($id) {
$playlists = Playlist::findOrFail($id);
$playlists ->delete();
Session::flash('flash_message', 'Task successfully deleted!');
return redirect()->route('playlist.index');
}
}
My index :
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
@section('content')
<h1>Task List</h1>
<p class="lead">Here's a list of all your tasks. <a href="{{ route('playlist.create') }}">Add a new one?</a></p>
<hr>
@foreach($playlists as $playlist)
<h3>{{ $playlist->title }}</h3>
<p>{{ $playlist->description}}</p>
<p>{{ $playlist->authors}}</p>
<p>{{ $playlist->date}}</p>
<p>{{ $playlist->url}}</p>
<p>{{ $playlist->menssage}}</p>
@endforeach
<p>
<a href="{{ route('playlist.show', $playlist->id) }}" class="btn btn-info">View Task</a>
<a href="{{ route('playlist.edit', $playlist->id) }}" class="btn btn-primary">Edit Task</a>
</p>
<hr>
@stop
@extends('layouts.master')
@section('content')
</body>
</html>