orderBy('name') ->paginate(10, ['id', 'name', 'username', 'email', 'created_at']); return view('user.index', [ 'users' => $users, ]); } /** * Show the form for editing the specified user. */ public function edit(User $user): View { $user->load('roles:id'); $roles = Role::query() ->orderBy('name') ->get(['id', 'name']); return view('user.edit', [ 'user' => $user, 'roles' => $roles, ]); } /** * Update the specified user. */ public function update(UpdateUserRequest $request, User $user): RedirectResponse { $validated = $request->validated(); $roleIds = $validated['roles'] ?? []; unset($validated['roles']); $user->fill($validated); if ($user->isDirty('email')) { $user->email_verified_at = null; } $user->save(); $user->roles()->sync($roleIds); return redirect() ->route('user.edit', $user) ->with('status', 'user-updated'); } }