Back
Syntax
Study
Editor
Mode:
HTML
CSS
JavaScript
PHP
Reset
Run »
HTML / CSS / JS
<?php // app/Http/Controllers/PostController.php namespace App\Http\Controllers; use App\Http\Requests\StorePostRequest; use App\Http\Requests\UpdatePostRequest; use App\Models\Post; use Illuminate\Http\RedirectResponse; use Illuminate\View\View; class PostController extends Controller { public function index(): View { $posts = Post::latest()->paginate(15); return view('posts.index', compact('posts')); } public function create(): View { return view('posts.create'); } public function store(StorePostRequest $request): RedirectResponse { $post = Post::create($request->validated()); return redirect()->route('posts.show', $post) ->with('success', 'Post created successfully.'); } public function show(Post $post): View { return view('posts.show', compact('post')); } public function edit(Post $post): View { return view('posts.edit', compact('post')); } public function update(UpdatePostRequest $request, Post $post): RedirectResponse { $post->update($request->validated()); return redirect()->route('posts.show', $post) ->with('success', 'Post updated.'); } public function destroy(Post $post): RedirectResponse { $post->delete(); return redirect()->route('posts.index') ->with('success', 'Post deleted.'); } }
Result
Open