From 7ca544ad32e8d9bea1e97d34b7e2ccb229fcb40f Mon Sep 17 00:00:00 2001 From: pengshiyu <1940607002@qq.com> Date: Fri, 14 Oct 2022 22:38:42 +0800 Subject: [PATCH] fix --- blog/golang/golang-mongo.md | 127 ++++++++++++++++++++++++++++++++++++ blog/golang/index.md | 3 +- weekly/20221017.md | 8 ++- 3 files changed, 136 insertions(+), 2 deletions(-) diff --git a/blog/golang/golang-mongo.md b/blog/golang/golang-mongo.md index a612d58..5cedf24 100644 --- a/blog/golang/golang-mongo.md +++ b/blog/golang/golang-mongo.md @@ -174,4 +174,131 @@ func main() { } +``` + +## 查找文档 + +```go +package main + +import ( + "context" + "fmt" + "time" + + "go.mongodb.org/mongo-driver/bson" + "go.mongodb.org/mongo-driver/mongo" + "go.mongodb.org/mongo-driver/mongo/options" +) + +func main() { + + ctx, cancel := context.WithTimeout(context.Background(), time.Second*30) + defer cancel() + + // 连接到mongo + db_url := "mongodb://localhost:27017" + clientOptions := options.Client().ApplyURI(db_url) + client, _ := mongo.Connect(ctx, clientOptions) + defer client.Disconnect(ctx) + + // 查询数据 + collection := client.Database("go_db").Collection("student") + + // 查询所有 + // cursor, _ := collection.Find(ctx, bson.D{}) + // 增加查询条件 name = "Tom" + cursor, _ := collection.Find(ctx, bson.D{{"name", "Tom"}}) + defer cursor.Close(ctx) + + // 遍历查询结果 + for cursor.Next(ctx) { + var result bson.D + cursor.Decode(&result) + fmt.Printf("result: %v\n", result) + // result: [{_id ObjectID("634822c35881b85ab2aa138e")} {name Tom} {age 23}] + } + +} + +``` + +## 更新文档 + +```go +package main + +import ( + "context" + "fmt" + + "go.mongodb.org/mongo-driver/bson" + "go.mongodb.org/mongo-driver/mongo" + "go.mongodb.org/mongo-driver/mongo/options" +) + + +func main() { + + ctx := context.TODO() + + // 连接到mongo + db_url := "mongodb://localhost:27017" + clientOptions := options.Client().ApplyURI(db_url) + client, _ := mongo.Connect(ctx, clientOptions) + defer client.Disconnect(ctx) + + // 更新数据 + collection := client.Database("go_db").Collection("student") + + cursor, _ := collection.UpdateOne(ctx, + bson.D{{"name", "Tom"}}, + bson.D{{"$set", bson.D{{"name", "Tom-1"}, {"age", 23}}}}, + ) + + fmt.Printf("cursor.ModifiedCount: %v\n", cursor.ModifiedCount) + // cursor.ModifiedCount: 1 + +} + +``` + +## 删除数据 + +```go +package main + +import ( + "context" + "fmt" + + "go.mongodb.org/mongo-driver/bson" + "go.mongodb.org/mongo-driver/mongo" + "go.mongodb.org/mongo-driver/mongo/options" +) + + + +func main() { + + ctx := context.TODO() + + // 连接到mongo + db_url := "mongodb://localhost:27017" + clientOptions := options.Client().ApplyURI(db_url) + client, _ := mongo.Connect(ctx, clientOptions) + defer client.Disconnect(ctx) + + // 删除数据 + collection := client.Database("go_db").Collection("student") + + cursor, _ := collection.DeleteOne(ctx, + bson.D{{"name", "Tom"}}, + ) + + fmt.Printf("cursor.DeletedCount: %v\n", cursor.DeletedCount) + // cursor.DeletedCount: 1 + +} + ``` \ No newline at end of file diff --git a/blog/golang/index.md b/blog/golang/index.md index 29c8e96..28d0b4d 100644 --- a/blog/golang/index.md +++ b/blog/golang/index.md @@ -113,4 +113,5 @@ https://www.bilibili.com/video/BV1ME411Y71o?p=27&spm_id_from=pageDriver&vd_source=efbb4dc944fa761b6e016ce2ca5933da -https://www.bilibili.com/video/BV1zR4y1t7Wj/?p=109&spm_id_from=pageDriver&vd_source=efbb4dc944fa761b6e016ce2ca5933da \ No newline at end of file + +https://www.bilibili.com/video/BV1zR4y1t7Wj?p=112&spm_id_from=pageDriver&vd_source=efbb4dc944fa761b6e016ce2ca5933da \ No newline at end of file diff --git a/weekly/20221017.md b/weekly/20221017.md index 5eab1bb..1a42f16 100644 --- a/weekly/20221017.md +++ b/weekly/20221017.md @@ -1,4 +1,4 @@ -# 全栈爱好者周刊|20221017 +# 全栈爱好者技术周刊|20221017 ## 前端 @@ -14,8 +14,14 @@ 教科书级图解 CSS Grid 布局,收藏了当字典用 - https://mp.weixin.qq.com/s/WNvT3TO6HmlNSEorHwuB4Q +Tauri:下一代桌面应用开发框架? +- https://mp.weixin.qq.com/s/G4K3nIB1SsYDsOxMv7CyFg ## 后端 万字长文:带你走进shell世界 - https://mp.weixin.qq.com/s/gtIWO3ItxyLdQeVorXtShQ + +33 个 "不得不看" 的 Python 关键字总结! + +- https://mp.weixin.qq.com/s/yMNyprGNMf4QEjYdG6wAbg \ No newline at end of file -- GitLab