Go is in development for v1. Interested in contributing or chatting with us?Get in touch!
Go - Collection.Doc.Set()
Set the value of a document.
import (
"context"
"fmt"
"github.com/nitrictech/go-sdk/nitric"
)
func main() {
profiles, err := nitric.NewCollection("profiles").With(nitric.CollectionWriting)
if err != nil {
return
}
drakeProfileRef := profiles.Doc("Drake Mallard")
err = drakeProfileRef.Set(context.TODO(), map[string]interface{}{
"firstName": "Drake",
"lastName": "Mallard",
})
if err != nil {
return
}
if err := nitric.Run(); err != nil {
fmt.Println(err)
}
}
Parameters
- Name
ctx
- Required
- Required
- Type
- context
- Description
The context of the call, used for tracing.
- Name
document
- Required
- Required
- Type
- map[string]interface{}
- Description
The document to set on the key
Examples
Set a document
import (
"context"
"fmt"
"github.com/nitrictech/go-sdk/nitric"
)
func main() {
profiles, err := nitric.NewCollection("profiles").With(nitric.CollectionWriting)
if err != nil {
return
}
drakeProfileRef := profiles.Doc("Drake Mallard")
err = drakeProfileRef.Set(context.TODO(), map[string]interface{}{
"firstName": "Drake",
"lastName": "Mallard",
})
if err != nil {
return
}
if err := nitric.Run(); err != nil {
fmt.Println(err)
}
}
Update a document
import (
"context"
"fmt"
"github.com/nitrictech/go-sdk/nitric"
)
func main() {
profiles, err := nitric.NewCollection("profiles").With(nitric.CollectionReading, nitric.CollectionWriting)
if err != nil {
return
}
drakeProfileRef := profiles.Doc("Drake Mallard")
existingProfile, err := drakeProfileRef.Get(context.TODO())
if err != nil {
return
}
contents := existingProfile.Content()
contents["firstName"] = "Drake"
err = drakeProfileRef.Set(context.TODO(), contents)
if err != nil {
return
}
if err := nitric.Run(); err != nil {
fmt.Println(err)
}
}