$this->settings->all(), ]); } public function update(Request $request): RedirectResponse { $validated = $request->validate([ 'site_name' => ['required', 'string', 'max:120'], 'site_tagline' => ['required', 'string', 'max:160'], 'home_title_suffix' => ['required', 'string', 'max:120'], 'home_eyebrow' => ['required', 'string', 'max:80'], 'home_headline' => ['required', 'string', 'max:160'], 'home_lede' => ['required', 'string', 'max:1000'], 'home_aside_kicker' => ['required', 'string', 'max:80'], 'home_aside_title' => ['required', 'string', 'max:160'], 'home_feature_one_title' => ['required', 'string', 'max:120'], 'home_feature_one_body' => ['required', 'string', 'max:255'], 'home_feature_two_title' => ['required', 'string', 'max:120'], 'home_feature_two_body' => ['required', 'string', 'max:255'], 'home_feature_three_title' => ['required', 'string', 'max:120'], 'home_feature_three_body' => ['required', 'string', 'max:255'], 'home_plugins_title' => ['required', 'string', 'max:120'], 'home_plugins_subtitle' => ['required', 'string', 'max:255'], 'home_themes_title' => ['required', 'string', 'max:120'], 'home_themes_subtitle' => ['required', 'string', 'max:255'], ]); $payload = collect($validated) ->map(fn ($value) => trim((string) $value)) ->all(); try { $this->settings->setMany($payload); } catch (Throwable $e) { return back()->withInput()->with('error', '站点设置保存失败:' . $e->getMessage()); } return redirect()->route('webadmin.settings')->with('success', '站点设置已更新'); } }