fix: 修一些已知bug

This commit is contained in:
ViperEkura 2026-03-26 23:09:33 +08:00
parent 950c1fa714
commit 1a010bb8ce
4 changed files with 15 additions and 9 deletions

View File

@ -4,8 +4,8 @@ from backend import load_config
_cfg = load_config() _cfg = load_config()
# Global defaults # Global defaults
DEFAULT_API_URL = _cfg.get("default_api_url", "") DEFAULT_API_URL = _cfg.get("api_url", "") or _cfg.get("default_api_url", "")
DEFAULT_API_KEY = _cfg.get("default_api_key", "") DEFAULT_API_KEY = _cfg.get("api_key", "") or _cfg.get("default_api_key", "")
# Model list (for /api/models endpoint) # Model list (for /api/models endpoint)
MODELS = _cfg.get("models", []) MODELS = _cfg.get("models", [])

View File

@ -63,9 +63,13 @@ def _resolve_user():
if cfg["mode"] == "single": if cfg["mode"] == "single":
user = User.query.filter_by(username="default").first() user = User.query.filter_by(username="default").first()
if not user: if not user:
try:
user = User(username="default", role="admin") user = User(username="default", role="admin")
db.session.add(user) db.session.add(user)
db.session.commit() db.session.commit()
except Exception:
db.session.rollback()
user = User.query.filter_by(username="default").first()
return user return user
# Multi-user mode: validate JWT # Multi-user mode: validate JWT

View File

@ -1152,7 +1152,6 @@
"resolved": "https://registry.npmmirror.com/marked/-/marked-15.0.12.tgz", "resolved": "https://registry.npmmirror.com/marked/-/marked-15.0.12.tgz",
"integrity": "sha512-8dD6FusOQSrpv9Z1rdNMdlSgQOIP880DHqnohobOmYLElGEqAL/JvxvuxZO16r4HtjTlfPRDC1hbvxC9dPN2nA==", "integrity": "sha512-8dD6FusOQSrpv9Z1rdNMdlSgQOIP880DHqnohobOmYLElGEqAL/JvxvuxZO16r4HtjTlfPRDC1hbvxC9dPN2nA==",
"license": "MIT", "license": "MIT",
"peer": true,
"bin": { "bin": {
"marked": "bin/marked.js" "marked": "bin/marked.js"
}, },
@ -1199,7 +1198,6 @@
"integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"peer": true,
"engines": { "engines": {
"node": ">=12" "node": ">=12"
}, },
@ -1312,7 +1310,6 @@
"integrity": "sha512-+Oxm7q9hDoLMyJOYfUYBuHQo+dkAloi33apOPP56pzj+vsdJDzr+j1NISE5pyaAuKL4A3UD34qd0lx5+kfKp2g==", "integrity": "sha512-+Oxm7q9hDoLMyJOYfUYBuHQo+dkAloi33apOPP56pzj+vsdJDzr+j1NISE5pyaAuKL4A3UD34qd0lx5+kfKp2g==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"peer": true,
"dependencies": { "dependencies": {
"esbuild": "^0.25.0", "esbuild": "^0.25.0",
"fdir": "^6.4.4", "fdir": "^6.4.4",
@ -1387,7 +1384,6 @@
"resolved": "https://registry.npmmirror.com/vue/-/vue-3.5.30.tgz", "resolved": "https://registry.npmmirror.com/vue/-/vue-3.5.30.tgz",
"integrity": "sha512-hTHLc6VNZyzzEH/l7PFGjpcTvUgiaPK5mdLkbjrTeWSRcEfxFrv56g/XckIYlE9ckuobsdwqd5mk2g1sBkMewg==", "integrity": "sha512-hTHLc6VNZyzzEH/l7PFGjpcTvUgiaPK5mdLkbjrTeWSRcEfxFrv56g/XckIYlE9ckuobsdwqd5mk2g1sBkMewg==",
"license": "MIT", "license": "MIT",
"peer": true,
"dependencies": { "dependencies": {
"@vue/compiler-dom": "3.5.30", "@vue/compiler-dom": "3.5.30",
"@vue/compiler-sfc": "3.5.30", "@vue/compiler-sfc": "3.5.30",

View File

@ -4,4 +4,10 @@ import './styles/global.css'
import './styles/highlight.css' import './styles/highlight.css'
import 'katex/dist/katex.min.css' import 'katex/dist/katex.min.css'
// Initialize theme before app mounts to avoid flash when lazy-loading useTheme
const savedTheme = localStorage.getItem('theme')
if (savedTheme === 'dark' || savedTheme === 'light') {
document.documentElement.setAttribute('data-theme', savedTheme)
}
createApp(App).mount('#app') createApp(App).mount('#app')