如何遍历UUID项目

时间:2019-12-27 01:32:56

标签: go

如何遍历由UUIDS组成的切片?我的值来自rows.Next()

的db

这是我将uuid值附加到切片中的方法(真的不知道它是否正确)

type Images struct {
    image_id uuid.UUID `gorm:"type:uuid;primary_key;"`
}


var new_images []Images

for olds.Next() {
    olds.Scan(&oldimages.image_id)    
    new_images = append(new_images , Images{image_id: oldimages.image_id})

}

这里的olds是我从gorm Rows

获得的行
olds, err := db.Raw("SELECT images_received.image_id FROM old_pics").Rows()
defer olds.Close()

这里给出了循环中的函数,但它的作用是我不知道如何将其用于uuid:

func islice(s []int, n int, f func([]int)) {
    for i := 0; i < len(s); i += n {
        var section []int
        if i > len(s)-n {
            section = s[i:]
        } else {
            section = s[i : i+n]
        }
        f(section)
    }
} 

知道我该怎么做吗?当前针对使用"github.com/satori/go.uuid" lib

的uuid im

我从另一个SO问题得到了函数,我的目标是遍历行,但是rows.Next()不允许这样做,我想我认为我需要将它们附加到一个切片中,所以我可以使他们四分之三。

因此导致了这个问题。

1 个答案:

答案 0 :(得分:1)

您要做的就是在islice函数中的所有地方(包括参数类型)将[] int替换为[] uuid.UUID。如果那是您的问题所在,则islice()的功能未绑定到[] int。