feat(settings): editable model library paths for standalone mode

Standalone users previously had to hand-edit settings.json to configure
primary folder_paths. Add a standalone-only Model Paths section to the
settings modal:

- Backend exposes standalone_mode, folder_paths (with template placeholder
  values filtered out) and a data-driven folder_path_schema derived from
  OTHER_MODEL_FOLDER_SUBTYPES via GET /api/lm/settings
- The new section renders multi-path editors per model type from the
  schema, with inline enable_other_models / sub-type controls so other
  model types are configured without leaving the tab
- Persistent restart-required cues after a save: nav dot, inline notice
  and a global banner (unique id per change so dismissals don't mute
  future reminders)
- The missing-model-paths startup banner and the Other Models no-paths
  empty state now deep-link into the new section instead of pointing at
  settings.json
This commit is contained in:
Will Miao
2026-09-18 19:36:19 +08:00
parent d4b82d98b2
commit 5adfa3be36
27 changed files with 1566 additions and 66 deletions
+29 -3
View File
@@ -382,7 +382,8 @@
"nav": {
"general": "General",
"interface": "Interfaz",
"library": "Biblioteca"
"library": "Biblioteca",
"modelPaths": "[TODO: Translate] Model Paths"
},
"search": {
"placeholder": "Buscar ajustes...",
@@ -583,6 +584,30 @@
"checkpointUnetOverlapInline": "Esta ruta ya se usa para otro tipo de modelo. Use carpetas separadas para checkpoints y modelos de difusión."
}
},
"modelPaths": {
"title": "[TODO: Translate] Model Library Paths",
"description": "[TODO: Translate] Root folders LoRA Manager scans for your models. These are the primary model locations read from settings.json in standalone mode.",
"restartRequired": "[TODO: Translate] Requires restart to take effect",
"coreTypes": "[TODO: Translate] Core Model Types",
"otherTypes": "[TODO: Translate] Other Model Types",
"otherTypesDisabledHint": "[TODO: Translate] No other model types are enabled. Turn on the types you need above to configure their folders.",
"saveSuccessRestart": "[TODO: Translate] Model library paths updated. Restart required to apply changes.",
"pendingRestartNotice": "[TODO: Translate] Path changes saved. Restart LoRA Manager for them to take effect.",
"pendingRestartBannerTitle": "[TODO: Translate] Restart required to apply path changes",
"pendingRestartBannerMessage": "[TODO: Translate] Model library paths were updated. Restart the LoRA Manager server to scan the new folders.",
"folderKeys": {
"loras": "[TODO: Translate] LoRA Paths",
"checkpoints": "[TODO: Translate] Checkpoint Paths",
"unet": "[TODO: Translate] Diffusion Model Paths",
"embeddings": "[TODO: Translate] Embedding Paths",
"vae": "[TODO: Translate] VAE Paths",
"upscale_models": "[TODO: Translate] Upscaler Paths",
"text_encoders": "[TODO: Translate] Text Encoder Paths",
"clip": "[TODO: Translate] CLIP Paths (legacy)",
"clip_vision": "[TODO: Translate] CLIP Vision Paths",
"controlnet": "[TODO: Translate] ControlNet Paths"
}
},
"priorityTags": {
"title": "Etiquetas prioritarias",
"description": "Personaliza el orden de prioridad de etiquetas para cada tipo de modelo (p. ej., character, concept, style(toon|toon_style))",
@@ -1241,11 +1266,12 @@
},
"noPaths": {
"title": "No se encontraron carpetas de otros modelos",
"descriptionStandalone": "La gestión de otros modelos está activada, pero no se encontraron carpetas de otros modelos. Añade las claves de carpeta que necesites a la sección folder_paths de tu settings.json y reinicia LoRA Manager.",
"hintStandalone": "Solo se escanean las claves de carpeta listadas arriba; las claves que no necesites puedes omitirlas.",
"descriptionStandalone": "[TODO: Translate] Other Models management is on, but no other-model folders were found. Add your model folders under Settings → Model Paths, then restart LoRA Manager.",
"hintStandalone": "[TODO: Translate] Only enabled model types are scanned; enable the types you need under Library → Folder Settings.",
"descriptionComfyUI": "La gestión de otros modelos está activada, pero ninguna de las carpetas de modelos configuradas existe en el disco. Añade las carpetas de modelos correspondientes a tus rutas de modelos de ComfyUI y recarga esta página.",
"hintComfyUI": "Los otros modelos se leen de las carpetas vae, upscale_models, text_encoders, clip_vision y controlnet de ComfyUI.",
"openSettings": "Abrir configuración",
"openModelPaths": "[TODO: Translate] Configure Model Folders",
"openSettingsFolder": "Abrir carpeta de ajustes"
}
},