feat: 增加是否标签是否有重复的

This commit is contained in:
cjy 2026-01-09 09:43:50 +08:00
parent ab8bdde9d9
commit 390d3ea35b

View File

@ -205,14 +205,24 @@ func processContentTags(ctx *gin.Context, content string) error {
return nil return nil
} }
// 第二步检查标签数量是否超过5个 // 第二步:检查是否有重复的标签
tagMap := make(map[string]bool)
for _, tag := range validTags {
tagLower := strings.ToLower(tag)
if tagMap[tagLower] {
return errors.New("帖子标签不能重复")
}
tagMap[tagLower] = true
}
// 第三步检查标签数量是否超过5个
if len(validTags) > 5 { if len(validTags) > 5 {
return errors.New("帖子标签数量不能超过5个") return errors.New("帖子标签数量不能超过5个")
} }
fmt.Println("validTags", validTags) fmt.Println("validTags", validTags)
// 第三步:调用 SaveTagsToDatabase 函数批量导入标签Source 设置为 3推荐标签 // 第步:调用 SaveTagsToDatabase 函数批量导入标签Source 设置为 3推荐标签
if err := SaveTagsToDatabase(ctx, validTags, 3); err != nil { if err := SaveTagsToDatabase(ctx, validTags, 3); err != nil {
zap.L().Error("processContentTags SaveTagsToDatabase failed", zap.Error(err)) zap.L().Error("processContentTags SaveTagsToDatabase failed", zap.Error(err))
return errors.New("批量导入标签失败") return errors.New("批量导入标签失败")