gpt4 book ai didi

go - 错误;不能将 imageName(类型 ImageName)用作 appendgo 中的 dao.ImageName 类型

转载 作者:数据小太阳 更新时间:2023-10-29 03:44:43 27 4
gpt4 key购买 nike

我正在用 Go 重构服务器端逻辑,但出现无法解决的错误。

・client: react/axios
・api: golang/gin
・web-server: nginx
・db: mysql
・container: docker
・ci-tool: travis
・deploy: aws elastic beanstalk

服务.go

func GetSingleArticleService(c *gin.Context, db *sql.DB) Article {

article, rows := dao.GetSingleArticleDao(c, db)
for rows.Next() {
imageName := ImageName{}
err := rows.Scan(&imageName.NAME)
if err != nil {
panic(err.Error())
}
// error occurs here
article.IMAGENAMES = append(article.IMAGENAMES, imageName)
}

return article
}

dao.go

func GetSingleArticleDao(c *gin.Context, db *sql.DB) (Article, *sql.Rows) {
id := c.Params.ByName("id")
article := Article{}
errArticle := db.QueryRow("SELECT * FROM articles WHERE id = ?", id).Scan(&article.ID, &article.UUID, &article.TITLE, &article.CONTENT)
if errArticle != nil {
panic(errArticle.Error())
}
rows, errImage := db.Query("SELECT image_name FROM images WHERE article_uuid = ?", article.UUID)
if errImage != nil {
panic(errImage.Error())
}

return article, rows
}

我希望没有编译错误,但实际没有。 service.go 出错。

cannot use imageName (type ImageName) as type dao.ImageName in append

最佳答案

按照@Volker的建议,我为通用模型制作了util.go文件并导入了它。

package util

type Article struct {
ID int `json:"id"`
UUID string `json:"uuid"`
TITLE string `json:"title"`
CONTENT string `json:"content"`
IMAGENAMES []ImageName `json:"imageNames"`
}

type ImageName struct {
NAME string `json:"name"`
}

type ImageData struct {
ARTICLEUUID string `json:"articleUUID"`
IMAGENAMES []ImageName `json:"imageNames"`
}

关于go - 错误;不能将 imageName(类型 ImageName)用作 appendgo 中的 dao.ImageName 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57603276/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com