From ac5d516c1e25a6b78d312e7a84b52985987347f6 Mon Sep 17 00:00:00 2001 From: Havoc412 <2993167370@qq.com> Date: Wed, 13 Nov 2024 18:56:22 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix=20TagsSlice?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/http/controller/web/encounter_controller.go | 7 ++----- app/model/encounter.go | 10 +++++----- app/model_es/encounter.go | 2 +- test/es/encounter_test.go | 6 +++--- 4 files changed, 11 insertions(+), 14 deletions(-) diff --git a/app/http/controller/web/encounter_controller.go b/app/http/controller/web/encounter_controller.go index 72111c3..5c94a7e 100644 --- a/app/http/controller/web/encounter_controller.go +++ b/app/http/controller/web/encounter_controller.go @@ -50,9 +50,10 @@ func (e *Encounters) Create(context *gin.Context) { if extra != nil { context.Set(consts.ValidatorPrefix+"topics", extra["topics"]) tags = data_transfer.GetStringSlice(context, "topics") + context.Set(consts.ValidatorPrefix+"tags_list", tags) context.Set(consts.ValidatorPrefix+"tags", tags) // INFO 这里字段没有直接匹配上。 } - // STAGE - 2 + // STAGE - 2: Make []string to String if res, err := data_transfer.ConvertSliceToString(photos); err == nil { context.Set(consts.ValidatorPrefix+"photos", res) } else { @@ -71,10 +72,6 @@ func (e *Encounters) Create(context *gin.Context) { if encounter, ok := model.CreateEncounterFactory("").InsertDate(context); ok { // 2: EA Links; // TIP 感觉直接使用 go 会直接且清晰。 go model.CreateEncounterAnimalLinkFactory("").Insert(encounter.Id, animals_id) - // if !model.CreateEncounterAnimalLinkFactory("").Insert(int64(encounter_id), animals_id) { - // response.Fail(context, errcode.ErrEaLinkInstert, errcode.ErrMsg[errcode.ErrEaLinkInstert], errcode.ErrMsgForUser[errcode.ErrEaLinkInstert]) - // return - // } // 3. ES speed if level := int(context.GetFloat64(consts.ValidatorPrefix + "level")); level > 1 { diff --git a/app/model/encounter.go b/app/model/encounter.go index 8904ff3..d95919c 100644 --- a/app/model/encounter.go +++ b/app/model/encounter.go @@ -22,11 +22,11 @@ type Encounter struct { // Encounter 或者称为 post,指的就是 Human 单 UsersModel *UsersModel `json:"users_model,omitempty"` // INFO 由于 Detail 返回空子段有些麻烦,先尝试采用指针。 // AnimalsId string `gorm:"size:20" json:"animals_id"` // 关联对象存在上限 // INFO 还是采取分表,方便查询。 - Title string `gorm:"size:20;column:title" json:"title"` - Content string `json:"content"` - Level uint8 `json:"level" gorm:"column:level;default:1"` - Tags string `json:"tags,omitempty" gorm:"column:tags;size:50"` - TagsSlice []string `gorm:"-" json:"tags_list,omitempty"` + Title string `gorm:"size:20;column:title" json:"title"` + Content string `json:"content"` + Level uint8 `json:"level" gorm:"column:level;default:1"` + Tags string `json:"tags,omitempty" gorm:"column:tags;size:50"` + TagsList []string `gorm:"-" json:"tags_list,omitempty"` // TAG Avatar 最好是压缩后的备份图像 Avatar string `gorm:"type:varchar(50)" json:"avatar,omitempty"` // 缩略图 url,为 Go 获取 Photo 之后压缩处理后的图像,单独存储。 diff --git a/app/model_es/encounter.go b/app/model_es/encounter.go index 3439cdf..e4fdcba 100644 --- a/app/model_es/encounter.go +++ b/app/model_es/encounter.go @@ -23,7 +23,7 @@ func CreateEncounterESFactory(encounter *model.Encounter) *Encounter { Id: encounter.Id, Title: encounter.Title, Content: encounter.Content, - Tags: encounter.TagsSlice, // TODO 暂时没有对此字段的查询。 + Tags: encounter.TagsList, // TODO 暂时没有对此字段的查询。 } } diff --git a/test/es/encounter_test.go b/test/es/encounter_test.go index 98d41cb..6ef2b98 100644 --- a/test/es/encounter_test.go +++ b/test/es/encounter_test.go @@ -14,9 +14,9 @@ func TestEncounterEs(t *testing.T) { BaseModel: model.BaseModel{ Id: 4, }, - Title: "猪皮伤势轻,需静养猪皮伤势轻,需静养", - Content: "猪皮被带到医院检查了,拍片结果显示损伤不严重,静养即可自愈。建议这段时间不要折腾他,让老登好好休息。", - TagsSlice: []string{"猪皮", "脚伤", "骗保"}, + Title: "猪皮伤势轻,需静养猪皮伤势轻,需静养", + Content: "猪皮被带到医院检查了,拍片结果显示损伤不严重,静养即可自愈。建议这段时间不要折腾他,让老登好好休息。", + TagsList: []string{"猪皮", "脚伤", "骗保"}, } encounter := model_es.CreateEncounterESFactory(encounterOri)