From efa6c2c8813a60068b7fbcfb7d086a64fac05748 Mon Sep 17 00:00:00 2001 From: zhangchenhao Date: Sat, 10 May 2025 18:22:01 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8C=87=E5=AE=9A=E8=BF=90=E8=A1=8C=E7=9B=AE?= =?UTF-8?q?=E5=BD=95=E4=B8=BA=E4=BA=8C=E8=BF=9B=E5=88=B6=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E6=89=80=E5=9C=A8=E7=9B=AE=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/migrations/init.go | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/backend/migrations/init.go b/backend/migrations/init.go index 52ae666..76bc015 100644 --- a/backend/migrations/init.go +++ b/backend/migrations/init.go @@ -10,6 +10,27 @@ import ( ) func init() { + // 指定运行目录为当前目录 + exePath, err := os.Executable() + if err != nil { + fmt.Fprintf(os.Stderr, "获取可执行文件路径失败: %v\n", err) + os.Exit(1) + } + + exePath, err = filepath.EvalSymlinks(exePath) // 解决 macOS/Linux 下软链接问题 + if err != nil { + fmt.Fprintf(os.Stderr, "解析软链接失败: %v\n", err) + os.Exit(1) + } + + exeDir := filepath.Dir(exePath) + + err = os.Chdir(exeDir) + if err != nil { + fmt.Fprintf(os.Stderr, "切换目录失败: %v\n", err) + os.Exit(1) + } + os.MkdirAll("data", os.ModePerm) dbPath := "data/data.db"