User::orderBy('name')->get(), ]); } public function create(): View { return view('admin.users.create'); } public function store(Request $request): RedirectResponse { $validated = $request->validate([ 'name' => ['required', 'string', 'max:255'], 'username' => ['required', 'string', 'max:255', 'alpha_dash', Rule::unique('users', 'username')], 'email' => ['required', 'email', 'max:255', Rule::unique('users', 'email')], 'password' => ['required', 'string', 'min:8', 'confirmed'], 'role' => ['nullable', Rule::in(['user', 'admin'])], ]); User::create([ 'name' => $validated['name'], 'username' => $validated['username'], 'email' => $validated['email'], 'password' => Hash::make($validated['password']), 'role' => $validated['role'] ?? 'user', ]); return redirect() ->route('admin.users.index') ->with('status', 'User baru berjaya ditambah.'); } }