3

我使用 Go + Postgres。要使用 Postgres,我使用pgx。我的 Postgres 表中有一个 UUID 数组,Go 中有一个带有 []*uuid.UUID 的 Struct (来自github.com/gofrs/uuid)(参见下面的代码)。

问题是当我尝试使用 AssignTo 函数时总是出错

不能:解码 &pgtype.UUIDArray{Elements:[]pgtype.UUID(nil), Dimensions:[]pgtype.ArrayDimension(nil), Status:0x2} 成 *[]*uuid.UUID

(我尝试使用所有带有指针的组合,但它不起作用)

我的结构(用于 API):

type Book struct {
    AuthorIds []*uuid.UUID `json:"author_ids"`
}

我的结构(用于使用 Postgres):

type PgBook struct {
    AuthorIds pgtype.UUIDArray `db:"author_ids"`
}

我使用AssignTo的功能来自pgx

err := pgBook.AuthorIds.AssignTo(&book.AuthorIds)

如何解决这个问题呢?

4

0 回答 0