{renderInput()}
-
- {isReadonly && (
-
-
- 只读配置,请通过环境变量文件修改
-
- )}
-
- {!isReadonly && field.readonlyWarning && (
-
-
- {field.readonlyWarning}
-
- )}
diff --git a/frontend/src/components/ConfigGroupCard.tsx b/frontend/src/components/ConfigGroupCard.tsx
index 3b1102a..574fcc9 100644
--- a/frontend/src/components/ConfigGroupCard.tsx
+++ b/frontend/src/components/ConfigGroupCard.tsx
@@ -33,12 +33,12 @@ export function ConfigGroupCard({
onReset,
isResetting,
}: ConfigGroupCardProps) {
- const hasOverride = group.fields.some((f) => f.source === 'override');
+ const hasOverride = group.fields.some((f) => f.source === 'db');
const handleReset = () => {
- // Only reset fields that actually have overrides
+ // Only reset fields that have been stored in DB
const keysToReset = group.fields
- .filter((f) => f.source === 'override')
+ .filter((f) => f.source === 'db')
.map((f) => f.envKey);
if (keysToReset.length > 0) {
diff --git a/frontend/src/components/ConfigManager.tsx b/frontend/src/components/ConfigManager.tsx
index feae516..e9db4ec 100644
--- a/frontend/src/components/ConfigManager.tsx
+++ b/frontend/src/components/ConfigManager.tsx
@@ -97,7 +97,7 @@ export function ConfigManager() {
if (!data) return;
const allOverrideKeys = data.groups
.flatMap((g) => g.fields)
- .filter((f) => f.source === 'override')
+ .filter((f) => f.source === 'db')
.map((f) => f.envKey);
if (allOverrideKeys.length === 0) return;
if (confirm('确定要重置所有配置到默认值吗?这将立即生效。')) {
@@ -106,7 +106,7 @@ export function ConfigManager() {
};
const hasOverrides = data?.groups.some((g) =>
- g.fields.some((f) => f.source === 'override')
+ g.fields.some((f) => f.source === 'db')
) ?? false;
if (isLoading) {
diff --git a/frontend/src/services/configService.ts b/frontend/src/services/configService.ts
index 0324a23..5690bd7 100644
--- a/frontend/src/services/configService.ts
+++ b/frontend/src/services/configService.ts
@@ -1,6 +1,6 @@
import api from '@/lib/api';
-export type ConfigSource = 'default' | 'env' | 'override';
+export type ConfigSource = 'default' | 'db';
export type ConfigFieldType = 'string' | 'number' | 'boolean' | 'url' | 'text' | 'enum';
export interface ConfigFieldDto {
@@ -9,8 +9,6 @@ export interface ConfigFieldDto {
description: string;
type: ConfigFieldType;
sensitive: boolean;
- readonly?: boolean;
- readonlyWarning?: string;
enumValues?: string[];
min?: number;
max?: number;