where('user_id', $request->user()->id) ->orderByDesc('created_at') ->paginate(10, ['id', 'title', 'slug', 'status', 'created_at']); return view('post.index', [ 'posts' => $posts, ]); } public function create(): View { return view('post.create'); } public function store(StorePostRequest $request): RedirectResponse { $request->user()->posts()->create($request->validated()); return redirect() ->route('post.index') ->with('status', 'post-created'); } public function edit(Post $post): View { Gate::authorize('update', $post); return view('post.edit', [ 'post' => $post, ]); } public function update(UpdatePostRequest $request, Post $post): RedirectResponse { $post->update($request->validated()); return redirect() ->route('post.edit', $post) ->with('status', 'post-updated'); } public function destroy(Request $request, Post $post): RedirectResponse { Gate::authorize('delete', $post); $post->delete(); return redirect() ->route('post.index') ->with('status', 'post-deleted'); } }