Golang 附加到一个类型的切片

Golang append to a slice of type

我正在执行 ldap 查询,我想将结果填充到切片中。结果看起来像

objectClass [top person organizationalPerson user]
cn [user.1]
sn [one]
description [user.1]
givenName [user]
distinguishedName [CN=user.1,OU=random,DC=example,DC=com]
...

我正在尝试将其填充到地图中,为此,我创建了一个类型。

    type keyvalue map[string]interface{}

现在我想创建一个这种类型的切片,以便多个用户的数据看起来像这样

objectClass [top person organizationalPerson user]
cn [user.1]
sn [one]
description [user.1]
givenName [user]
distinguishedName [CN=user.1,OU=random,DC=example,DC=com]
...
objectClass [top person organizationalPerson user]
cn [user.2]
sn [one]
description [user.2]
givenName [user]
distinguishedName [CN=user.2,OU=random,DC=example,DC=com]
...

为此,我创建了一个我在上面创建的类型的切片。

userslice := make([]keyvalue, 1, 1)

如何在每次迭代中将每个用户的参数附加到切片中?

只需在您的代码中使用 keyvalue 而不是 map[string]interface{}

type keyvalue map[string]interface{}

....

user1 := make(keyvalue)
user1["distinguishedName"] = "[CN=user.1,OU=random,DC=example,DC=com]"
user1["givenName"] = "user"

var userslice []keyvalue
userslice = append(userslice, user1)

fmt.Printf("%#v", userslice)