|
<?php |
|
|
|
namespace App\Http\Controllers; |
|
|
|
use Illuminate\Http\Request; |
|
use App\Models\Book; |
|
|
|
class BookController extends Controller |
|
{ |
|
|
|
|
|
|
|
|
|
|
|
public function index() |
|
{ |
|
$books = Book::all(); |
|
return view('books.index', compact('books')); |
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
public function create() |
|
{ |
|
return view('books.create'); |
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public function store(Request $request) |
|
{ |
|
$request->validate([ |
|
'title' => 'required', |
|
'author' => 'required', |
|
'published_at' => 'required', |
|
]); |
|
|
|
Book::create($request->all()); |
|
|
|
return redirect()->route('books.index'); |
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public function show($id) |
|
{ |
|
$book = Book::find($id); |
|
return view('books.show', compact('book')); |
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public function edit($id) |
|
{ |
|
$book = Book::find($id); |
|
return view('books.edit', compact('book')); |
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public function update(Request $request, $id) |
|
{ |
|
$request->validate([ |
|
'title' => 'required', |
|
'author' => 'required', |
|
'published_at' => 'required', |
|
]); |
|
|
|
$book = Book::find($id); |
|
$book->update($request->all()); |
|
|
|
return redirect()->route('books.index'); |
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public function destroy($id) |
|
{ |
|
Book::destroy($id); |
|
return redirect()->route('books.index'); |
|
} |
|
} |