Skip to content

Mongo Examples

The official runnable project is ss-keel-examples/examples/13-mongo.

mongoCfg := config.MustLoadConfig[mongo.Config]()
mongoCfg.Logger = log
mongoCfg.AppName = cfg.Name
client, err := mongo.New(mongoCfg)
if err != nil {
log.Error("failed to connect to MongoDB: %v", err)
os.Exit(1)
}
defer client.Close()
repo := mongo.NewRepository[Note, string](client, "notes")
app.RegisterHealthChecker(mongo.NewHealthChecker(client))
note := &Note{Title: req.Title, Body: req.Body}
note.OnCreate()
if err := repo.Create(context.Background(), note); err != nil {
return core.Internal("could not create note", err)
}
return c.Created(note)
q := c.ParsePagination()
page, err := repo.FindAll(context.Background(), q)
if err != nil {
return core.Internal("could not fetch notes", err)
}
return c.OK(page)