我正在嘗試綁定數組類型并將數組中包含的值一一放入我嘗試了循環但有 json 返回,所以只存儲了 1像這樣log_id|tag_id|------+------+1 | 1|http正文{ "LogId" : 1 "tags" : [1,2,3,4,5,6,7,8,9]} var binder struct { LogId uuid.UUID `json:"logId"` TagId []int32 `json:"tags"` } json.Unmarshal([]byte(c.Request().Body), &binder) err := h.UseCases.CreateReviewLogUseCase.Use(c.Ctx(), database.ReviewLogDenyTag{ LogID: binder.LogId, TagID: binder.TagId, }) return c.JSON(http.StatusCreated, map[string]string{ "message": "success", })如何執行這樣log_id|tag_id|------+------+1 | 1|1 | 2|1 | 3|1 | 4|1 | 5|1 | 6|1 | 7|1 | 8|1 | 9|謝謝
1 回答

慕桂英546537
TA貢獻1848條經驗 獲得超10個贊
看起來你的問題是你實際上并沒有遍歷你的標簽列表。市面上的每種編程語言都有一種語法允許您執行此操作,通常稱為 for 循環。在 Go 中,for 循環有幾個有效的語法:for {starting}; {ending}; {update} {}就像在 C 中一樣,或者for {index}, {value} := range {collection} {}. 第一種語法雖然可用,但對于您的用例來說并不是最好的,因此我們將使用第二種語法。應用它給出:
for _, tag := range binder.TagId {
err := h.UseCases.CreateReviewLogUseCase.Use(c.Ctx(),
database.ReviewLogDenyTag{
LogID: binder.LogId,
TagID: tag,
})
}
這是在迭代 中的每個條目binder.TagId,這是一個整數片段,并提取每個條目的值和索引。在此示例中,我們丟棄不需要的索引并直接使用該值。
- 1 回答
- 0 關注
- 133 瀏覽
添加回答
舉報
0/150
提交
取消