From cc551ba2669203b7ac6d6bc0789c9b596e1d2c47 Mon Sep 17 00:00:00 2001 From: RockYang Date: Mon, 5 Aug 2024 16:14:44 +0800 Subject: [PATCH] show sql error message --- CHANGELOG.md | 2 ++ api/handler/admin/api_key_handler.go | 26 ++++++++++---------- api/handler/admin/chat_handler.go | 7 +++--- api/handler/admin/chat_model_handler.go | 21 +++++++--------- api/handler/admin/chat_role_handler.go | 21 +++++++--------- api/handler/admin/function_handler.go | 14 +++++------ api/handler/admin/menu_handler.go | 30 ++++++++++------------- api/handler/admin/order_handler.go | 5 ++-- api/handler/admin/product_handler.go | 32 +++++++++++-------------- api/handler/admin/reward_handler.go | 7 +++--- api/handler/admin/user_handler.go | 3 +-- api/handler/chat_role_handler.go | 7 +++--- api/handler/dalle_handler.go | 7 +++--- api/handler/mj_handler.go | 7 +++--- api/handler/reward_handler.go | 14 +++++------ api/handler/sd_handler.go | 7 +++--- api/handler/user_handler.go | 14 +++++------ api/utils/openai.go | 6 +++++ database/update-v4.1.2.sql | 1 + web/src/views/admin/ApiKey.vue | 2 +- web/src/views/admin/ChatModel.vue | 8 ++++++- web/src/views/admin/Users.vue | 4 ++-- 22 files changed, 115 insertions(+), 130 deletions(-) create mode 100644 database/update-v4.1.2.sql diff --git a/CHANGELOG.md b/CHANGELOG.md index 6c94e9f5..a1eddfdf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,8 @@ ## v4.1.2 * Bug修复:修复思维导图页面获取模型失败的问题 * 功能优化:优化MJ,SD,DALL-E 任务列表页面,显示失败任务的错误信息,删除失败任务可以恢复扣减算力 +* Bug修复:修复后台拖动排序组件 Bug +* 功能优化:更新数据库失败时候显示具体的的报错信息 ## v4.1.1 * Bug修复:修复 GPT 模型 function call 调用后没有输出的问题 diff --git a/api/handler/admin/api_key_handler.go b/api/handler/admin/api_key_handler.go index fc821398..ef1d93d1 100644 --- a/api/handler/admin/api_key_handler.go +++ b/api/handler/admin/api_key_handler.go @@ -8,6 +8,7 @@ package admin // * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ import ( + "fmt" "geekai/core" "geekai/core/types" "geekai/handler" @@ -53,17 +54,16 @@ func (h *ApiKeyHandler) Save(c *gin.Context) { apiKey.Enabled = data.Enabled apiKey.ProxyURL = data.ProxyURL apiKey.Name = data.Name - res := h.DB.Save(&apiKey) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Save(&apiKey).Error + if err != nil { + resp.ERROR(c, err.Error()) return } var keyVo vo.ApiKey - err := utils.CopyObject(apiKey, &keyVo) + err = utils.CopyObject(apiKey, &keyVo) if err != nil { - resp.ERROR(c, "数据拷贝失败!") + resp.ERROR(c, fmt.Sprintf("拷贝数据失败:%v", err)) return } keyVo.Id = apiKey.Id @@ -119,10 +119,9 @@ func (h *ApiKeyHandler) Set(c *gin.Context) { return } - res := h.DB.Model(&model.ApiKey{}).Where("id = ?", data.Id).Update(data.Filed, data.Value) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Model(&model.ApiKey{}).Where("id = ?", data.Id).Update(data.Filed, data.Value).Error + if err != nil { + resp.ERROR(c, err.Error()) return } resp.SUCCESS(c) @@ -135,10 +134,9 @@ func (h *ApiKeyHandler) Remove(c *gin.Context) { return } - res := h.DB.Where("id", id).Delete(&model.ApiKey{}) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Where("id", id).Delete(&model.ApiKey{}).Error + if err != nil { + resp.ERROR(c, err.Error()) return } resp.SUCCESS(c) diff --git a/api/handler/admin/chat_handler.go b/api/handler/admin/chat_handler.go index f51cf85f..675df38d 100644 --- a/api/handler/admin/chat_handler.go +++ b/api/handler/admin/chat_handler.go @@ -259,10 +259,9 @@ func (h *ChatHandler) RemoveChat(c *gin.Context) { // RemoveMessage 删除聊天记录 func (h *ChatHandler) RemoveMessage(c *gin.Context) { id := h.GetInt(c, "id", 0) - tx := h.DB.Unscoped().Where("id = ?", id).Delete(&model.ChatMessage{}) - if tx.Error != nil { - logger.Error("error with update database:", tx.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Unscoped().Where("id = ?", id).Delete(&model.ChatMessage{}).Error + if err != nil { + resp.ERROR(c, err.Error()) return } resp.SUCCESS(c) diff --git a/api/handler/admin/chat_model_handler.go b/api/handler/admin/chat_model_handler.go index 5f84e852..f1461ebc 100644 --- a/api/handler/admin/chat_model_handler.go +++ b/api/handler/admin/chat_model_handler.go @@ -147,10 +147,9 @@ func (h *ChatModelHandler) Set(c *gin.Context) { return } - res := h.DB.Model(&model.ChatModel{}).Where("id = ?", data.Id).Update(data.Filed, data.Value) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Model(&model.ChatModel{}).Where("id = ?", data.Id).Update(data.Filed, data.Value).Error + if err != nil { + resp.ERROR(c, err.Error()) return } resp.SUCCESS(c) @@ -168,10 +167,9 @@ func (h *ChatModelHandler) Sort(c *gin.Context) { } for index, id := range data.Ids { - res := h.DB.Model(&model.ChatModel{}).Where("id = ?", id).Update("sort_num", data.Sorts[index]) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Model(&model.ChatModel{}).Where("id = ?", id).Update("sort_num", data.Sorts[index]).Error + if err != nil { + resp.ERROR(c, err.Error()) return } } @@ -186,10 +184,9 @@ func (h *ChatModelHandler) Remove(c *gin.Context) { return } - res := h.DB.Where("id = ?", id).Delete(&model.ChatModel{}) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Where("id = ?", id).Delete(&model.ChatModel{}).Error + if err != nil { + resp.ERROR(c, err.Error()) return } resp.SUCCESS(c) diff --git a/api/handler/admin/chat_role_handler.go b/api/handler/admin/chat_role_handler.go index 3e69ae33..74b3d398 100644 --- a/api/handler/admin/chat_role_handler.go +++ b/api/handler/admin/chat_role_handler.go @@ -46,10 +46,9 @@ func (h *ChatRoleHandler) Save(c *gin.Context) { if data.CreatedAt > 0 { role.CreatedAt = time.Unix(data.CreatedAt, 0) } - res := h.DB.Save(&role) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err = h.DB.Save(&role).Error + if err != nil { + resp.ERROR(c, err.Error()) return } // 填充 ID 数据 @@ -114,10 +113,9 @@ func (h *ChatRoleHandler) Sort(c *gin.Context) { } for index, id := range data.Ids { - res := h.DB.Model(&model.ChatRole{}).Where("id = ?", id).Update("sort_num", data.Sorts[index]) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Model(&model.ChatRole{}).Where("id = ?", id).Update("sort_num", data.Sorts[index]).Error + if err != nil { + resp.ERROR(c, err.Error()) return } } @@ -137,10 +135,9 @@ func (h *ChatRoleHandler) Set(c *gin.Context) { return } - res := h.DB.Model(&model.ChatRole{}).Where("id = ?", data.Id).Update(data.Filed, data.Value) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Model(&model.ChatRole{}).Where("id = ?", data.Id).Update(data.Filed, data.Value).Error + if err != nil { + resp.ERROR(c, err.Error()) return } resp.SUCCESS(c) diff --git a/api/handler/admin/function_handler.go b/api/handler/admin/function_handler.go index c9e8005f..90af01e7 100644 --- a/api/handler/admin/function_handler.go +++ b/api/handler/admin/function_handler.go @@ -69,10 +69,9 @@ func (h *FunctionHandler) Set(c *gin.Context) { return } - res := h.DB.Model(&model.Function{}).Where("id = ?", data.Id).Update(data.Filed, data.Value) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Model(&model.Function{}).Where("id = ?", data.Id).Update(data.Filed, data.Value).Error + if err != nil { + resp.ERROR(c, err.Error()) return } resp.SUCCESS(c) @@ -102,10 +101,9 @@ func (h *FunctionHandler) Remove(c *gin.Context) { id := h.GetInt(c, "id", 0) if id > 0 { - res := h.DB.Delete(&model.Function{Id: uint(id)}) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Delete(&model.Function{Id: uint(id)}).Error + if err != nil { + resp.ERROR(c, err.Error()) return } } diff --git a/api/handler/admin/menu_handler.go b/api/handler/admin/menu_handler.go index 001c601d..d5b45e40 100644 --- a/api/handler/admin/menu_handler.go +++ b/api/handler/admin/menu_handler.go @@ -41,17 +41,16 @@ func (h *MenuHandler) Save(c *gin.Context) { return } - res := h.DB.Save(&model.Menu{ + err := h.DB.Save(&model.Menu{ Id: data.Id, Name: data.Name, Icon: data.Icon, URL: data.URL, SortNum: data.SortNum, Enabled: data.Enabled, - }) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + }).Error + if err != nil { + resp.ERROR(c, err.Error()) return } resp.SUCCESS(c) @@ -85,10 +84,9 @@ func (h *MenuHandler) Enable(c *gin.Context) { return } - res := h.DB.Model(&model.Menu{}).Where("id", data.Id).UpdateColumn("enabled", data.Enabled) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Model(&model.Menu{}).Where("id", data.Id).UpdateColumn("enabled", data.Enabled).Error + if err != nil { + resp.ERROR(c, err.Error()) return } resp.SUCCESS(c) @@ -106,10 +104,9 @@ func (h *MenuHandler) Sort(c *gin.Context) { } for index, id := range data.Ids { - res := h.DB.Model(&model.Menu{}).Where("id", id).Update("sort_num", data.Sorts[index]) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Model(&model.Menu{}).Where("id", id).Update("sort_num", data.Sorts[index]).Error + if err != nil { + resp.ERROR(c, err.Error()) return } } @@ -121,10 +118,9 @@ func (h *MenuHandler) Remove(c *gin.Context) { id := h.GetInt(c, "id", 0) if id > 0 { - res := h.DB.Where("id", id).Delete(&model.Menu{}) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Where("id", id).Delete(&model.Menu{}).Error + if err != nil { + resp.ERROR(c, err.Error()) return } } diff --git a/api/handler/admin/order_handler.go b/api/handler/admin/order_handler.go index ab6752b6..4db6c4a6 100644 --- a/api/handler/admin/order_handler.go +++ b/api/handler/admin/order_handler.go @@ -92,10 +92,9 @@ func (h *OrderHandler) Remove(c *gin.Context) { return } - res = h.DB.Unscoped().Where("id = ?", id).Delete(&model.Order{}) + err := h.DB.Unscoped().Where("id = ?", id).Delete(&model.Order{}).Error if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + resp.ERROR(c, err.Error()) return } } diff --git a/api/handler/admin/product_handler.go b/api/handler/admin/product_handler.go index e2b66c7d..5df18de1 100644 --- a/api/handler/admin/product_handler.go +++ b/api/handler/admin/product_handler.go @@ -55,17 +55,16 @@ func (h *ProductHandler) Save(c *gin.Context) { if item.Id > 0 { item.CreatedAt = time.Unix(data.CreatedAt, 0) } - res := h.DB.Save(&item) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Save(&item).Error + if err != nil { + resp.ERROR(c, err.Error()) return } var itemVo vo.Product - err := utils.CopyObject(item, &itemVo) + err = utils.CopyObject(item, &itemVo) if err != nil { - resp.ERROR(c, "数据拷贝失败!") + resp.ERROR(c, "数据拷贝失败: "+err.Error()) return } itemVo.Id = item.Id @@ -106,10 +105,9 @@ func (h *ProductHandler) Enable(c *gin.Context) { return } - res := h.DB.Model(&model.Product{}).Where("id", data.Id).UpdateColumn("enabled", data.Enabled) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Model(&model.Product{}).Where("id", data.Id).UpdateColumn("enabled", data.Enabled).Error + if err != nil { + resp.ERROR(c, err.Error()) return } resp.SUCCESS(c) @@ -127,10 +125,9 @@ func (h *ProductHandler) Sort(c *gin.Context) { } for index, id := range data.Ids { - res := h.DB.Model(&model.Product{}).Where("id", id).Update("sort_num", data.Sorts[index]) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Model(&model.Product{}).Where("id", id).Update("sort_num", data.Sorts[index]).Error + if err != nil { + resp.ERROR(c, err.Error()) return } } @@ -142,10 +139,9 @@ func (h *ProductHandler) Remove(c *gin.Context) { id := h.GetInt(c, "id", 0) if id > 0 { - res := h.DB.Where("id", id).Delete(&model.Product{}) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Where("id", id).Delete(&model.Product{}).Error + if err != nil { + resp.ERROR(c, err.Error()) return } } diff --git a/api/handler/admin/reward_handler.go b/api/handler/admin/reward_handler.go index 2dc2e281..fb479d3c 100644 --- a/api/handler/admin/reward_handler.go +++ b/api/handler/admin/reward_handler.go @@ -70,10 +70,9 @@ func (h *RewardHandler) Remove(c *gin.Context) { return } if data.Id > 0 { - res := h.DB.Where("id = ?", data.Id).Delete(&model.Reward{}) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err := h.DB.Where("id = ?", data.Id).Delete(&model.Reward{}).Error + if err != nil { + resp.ERROR(c, err.Error()) return } } diff --git a/api/handler/admin/user_handler.go b/api/handler/admin/user_handler.go index c2386efc..7a32595a 100644 --- a/api/handler/admin/user_handler.go +++ b/api/handler/admin/user_handler.go @@ -168,8 +168,7 @@ func (h *UserHandler) Save(c *gin.Context) { } if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败") + resp.ERROR(c, res.Error.Error()) return } diff --git a/api/handler/chat_role_handler.go b/api/handler/chat_role_handler.go index 5f85e145..ce18ec8e 100644 --- a/api/handler/chat_role_handler.go +++ b/api/handler/chat_role_handler.go @@ -81,10 +81,9 @@ func (h *ChatRoleHandler) UpdateRole(c *gin.Context) { return } - res := h.DB.Model(&model.User{}).Where("id = ?", user.Id).UpdateColumn("chat_roles_json", utils.JsonEncode(data.Keys)) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败!") + err = h.DB.Model(&model.User{}).Where("id = ?", user.Id).UpdateColumn("chat_roles_json", utils.JsonEncode(data.Keys)).Error + if err != nil { + resp.ERROR(c, err.Error()) return } diff --git a/api/handler/dalle_handler.go b/api/handler/dalle_handler.go index 65d631fb..9f6ad7b1 100644 --- a/api/handler/dalle_handler.go +++ b/api/handler/dalle_handler.go @@ -276,10 +276,9 @@ func (h *DallJobHandler) Publish(c *gin.Context) { userId := h.GetLoginUserId(c) action := h.GetBool(c, "action") // 发布动作,true => 发布,false => 取消分享 - res := h.DB.Model(&model.DallJob{Id: uint(id), UserId: userId}).UpdateColumn("publish", action) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败") + err := h.DB.Model(&model.DallJob{Id: uint(id), UserId: userId}).UpdateColumn("publish", action).Error + if err != nil { + resp.ERROR(c, err.Error()) return } diff --git a/api/handler/mj_handler.go b/api/handler/mj_handler.go index 049af981..079a9a17 100644 --- a/api/handler/mj_handler.go +++ b/api/handler/mj_handler.go @@ -513,10 +513,9 @@ func (h *MidJourneyHandler) Publish(c *gin.Context) { id := h.GetInt(c, "id", 0) userId := h.GetInt(c, "user_id", 0) action := h.GetBool(c, "action") // 发布动作,true => 发布,false => 取消分享 - res := h.DB.Model(&model.MidJourneyJob{Id: uint(id), UserId: userId}).UpdateColumn("publish", action) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败") + err := h.DB.Model(&model.MidJourneyJob{Id: uint(id), UserId: userId}).UpdateColumn("publish", action).Error + if err != nil { + resp.ERROR(c, err.Error()) return } diff --git a/api/handler/reward_handler.go b/api/handler/reward_handler.go index 44045f58..6db5834f 100644 --- a/api/handler/reward_handler.go +++ b/api/handler/reward_handler.go @@ -70,11 +70,10 @@ func (h *RewardHandler) Verify(c *gin.Context) { exchange := vo.RewardExchange{} power := math.Ceil(item.Amount / h.App.SysConfig.PowerPrice) exchange.Power = int(power) - res = tx.Model(&user).UpdateColumn("power", gorm.Expr("power + ?", exchange.Power)) - if res.Error != nil { + err = tx.Model(&user).UpdateColumn("power", gorm.Expr("power + ?", exchange.Power)).Error + if err != nil { tx.Rollback() - logger.Error("添加应用失败:", res.Error) - resp.ERROR(c, "更新数据库失败!") + resp.ERROR(c, err.Error()) return } @@ -82,11 +81,10 @@ func (h *RewardHandler) Verify(c *gin.Context) { item.Status = true item.UserId = user.Id item.Exchange = utils.JsonEncode(exchange) - res = tx.Updates(&item) - if res.Error != nil { + err = tx.Updates(&item).Error + if err != nil { tx.Rollback() - logger.Error("添加应用失败:", res.Error) - resp.ERROR(c, "更新数据库失败!") + resp.ERROR(c, err.Error()) return } diff --git a/api/handler/sd_handler.go b/api/handler/sd_handler.go index 18710358..73381d39 100644 --- a/api/handler/sd_handler.go +++ b/api/handler/sd_handler.go @@ -342,10 +342,9 @@ func (h *SdJobHandler) Publish(c *gin.Context) { userId := h.GetLoginUserId(c) action := h.GetBool(c, "action") // 发布动作,true => 发布,false => 取消分享 - res := h.DB.Model(&model.SdJob{Id: uint(id), UserId: int(userId)}).UpdateColumn("publish", action) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败") + err := h.DB.Model(&model.SdJob{Id: uint(id), UserId: int(userId)}).UpdateColumn("publish", action).Error + if err != nil { + resp.ERROR(c, err.Error()) return } diff --git a/api/handler/user_handler.go b/api/handler/user_handler.go index 5eb23a00..db39216a 100644 --- a/api/handler/user_handler.go +++ b/api/handler/user_handler.go @@ -481,10 +481,9 @@ func (h *UserHandler) UpdatePass(c *gin.Context) { } newPass := utils.GenPassword(data.Password, user.Salt) - res := h.DB.Model(&user).UpdateColumn("password", newPass) - if res.Error != nil { - logger.Error("error with update database:", res.Error) - resp.ERROR(c, "更新数据库失败") + err = h.DB.Model(&user).UpdateColumn("password", newPass).Error + if err != nil { + resp.ERROR(c, err.Error()) return } @@ -562,10 +561,9 @@ func (h *UserHandler) BindUsername(c *gin.Context) { return } - res = h.DB.Model(&user).UpdateColumn("username", data.Username) - if res.Error != nil { - logger.Error(res.Error) - resp.ERROR(c, "更新数据库失败") + err = h.DB.Model(&user).UpdateColumn("username", data.Username).Error + if err != nil { + resp.ERROR(c, err.Error()) return } diff --git a/api/utils/openai.go b/api/utils/openai.go index fdbed5f9..e1bccd67 100644 --- a/api/utils/openai.go +++ b/api/utils/openai.go @@ -64,6 +64,7 @@ func OpenAIRequest(db *gorm.DB, prompt string, modelName string) (string, error) client.SetProxyURL(apiKey.ApiURL) } apiURL := fmt.Sprintf("%s/v1/chat/completions", apiKey.ApiURL) + logger.Debugf("Sending %s request, API KEY:%s, PROXY: %s, Model: %s", apiKey.ApiURL, apiURL, apiKey.ProxyURL, modelName) r, err := client.R().SetHeader("Content-Type", "application/json"). SetHeader("Authorization", "Bearer "+apiKey.Value). SetBody(types.ApiRequest{ @@ -76,6 +77,11 @@ func OpenAIRequest(db *gorm.DB, prompt string, modelName string) (string, error) if err != nil { return "", fmt.Errorf("请求 OpenAI API失败:%v", err) } + + if r.IsErrorState() { + return "", fmt.Errorf("请求 OpenAI API失败:%v", r.Status) + } + body, _ := io.ReadAll(r.Body) err = json.Unmarshal(body, &response) if err != nil { diff --git a/database/update-v4.1.2.sql b/database/update-v4.1.2.sql new file mode 100644 index 00000000..301ccae5 --- /dev/null +++ b/database/update-v4.1.2.sql @@ -0,0 +1 @@ +ALTER TABLE `chatgpt_suno_jobs` MODIFY `id` INT AUTO_INCREMENT; \ No newline at end of file diff --git a/web/src/views/admin/ApiKey.vue b/web/src/views/admin/ApiKey.vue index 5d7cd6ad..1829b356 100644 --- a/web/src/views/admin/ApiKey.vue +++ b/web/src/views/admin/ApiKey.vue @@ -193,7 +193,7 @@ const fetchData = () => { const add = function () { showDialog.value = true title.value = "新增 API KEY" - item.value = {enabled: true} + item.value = {enabled: true,api_url: "https://api.chat-plus.net"} } const edit = function (row) { diff --git a/web/src/views/admin/ChatModel.vue b/web/src/views/admin/ChatModel.vue index 990b2465..3ecb89ed 100644 --- a/web/src/views/admin/ChatModel.vue +++ b/web/src/views/admin/ChatModel.vue @@ -10,7 +10,12 @@ - + + + +