使用golang中的过滤器从mongodb复合集合中获取所有数据
短信预约 -IT技能 免费直播动态提醒
问题内容
我尝试使用我在 api 请求正文中指定的名称字段获取所有数据。我为 .find() 函数创建了一个过滤器。但我无法得到任何结果(响应正文显示 null,根本没有错误)。您可以在底部看到我的模型文件和代码的其他部分。
控制器:
func get_formbypatientfullname(ctx *gin.context) {
col := mongodb.client.database(config.database_name).collection("consentforms")
filter := bson.m{"patient": bson.m{"name": ctx.query("name")}}
cursor, err := col.find(_context.todo(), filter)
if err != nil {
log.fatal(err)
}
var results []general_models.consentform
if err = cursor.all(_context.todo(), &results); err != nil {
log.fatal(err)
}
for _, result := range results {
res, _ := json.marshal(result)
fmt.println(string(res))
}
ctx.indentedjson(http.statusok, gin.h{"data": results})
}
模型文件:
type ConsentForm struct {
ID primitive.ObjectID `json:"_id,omitempty" bson:"_id,omitempty"`
FormFileURL string `json:"FormFileURL" bson:"FormFileURL"`
ProcessName string `json:"ProcessName" bson:"ProcessName"`
DateOfNotification string `json:"DateOfNotification" bson:"DateOfNotification"`
WitnessName string `json:"WitnessName" bson:"WitnessName"`
WitnessSurname string `json:"WitnessSurname" bson:"WitnessSurname"`
ResponsibleDoctor string `json:"ResponsibleDoctor" bson:"ResponsibleDoctor"`
Patient IPatient `json:"Patient" bson:"Patient"`
QuestionOptions IQuestionOptions `json:"QuestionOptions" bson:"QuestionOptions"`
AdditionalDetails string `json:"AdditionalDetails" bson:"AdditionalDetails"`
}
type IPatient struct {
// ID primitive.ObjectID `json:"_id,omitempty" bson:"_id,omitempty"`
Name string `json:"Name" bson:"Name"`
Surname string `json:"Surname" bson:"Surname"`
Birthdate string `json:"Birthdate" bson:"Birthdate"`
TCKN string `json:"TCKN" bson:"TCKN"`
FacePhotoURL string `json:"FacePhotoURL" bson:"FacePhotoURL"`
SignatureImageURL string `json:"SignatureImageURL" bson:"SignatureImageURL"`
}
我尝试根据用户名过滤并获取用户的所有数据。但我认为我在过滤器部分或整个代码中存在错误,因为我无法获得任何数据返回。我得到的回报是空的。
正确答案
您的过滤器将匹配其中 patient
是嵌入文档且具有与给定值匹配的单个 name
字段的文档。
要按嵌入文档的字段进行过滤,您必须使用点符号:
filter := bson.M{"Patient.Name": ctx.Query("name")}
以上就是使用golang中的过滤器从mongodb复合集合中获取所有数据的详细内容,更多请关注编程网其它相关文章!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
使用golang中的过滤器从mongodb复合集合中获取所有数据
下载Word文档到电脑,方便收藏和打印~
下载Word文档
猜你喜欢
使用golang中的过滤器从mongodb复合集合中获取所有数据
问题内容我尝试使用我在 api 请求正文中指定的名称字段获取所有数据。我为 .find() 函数创建了一个过滤器。但我无法得到任何结果(响应正文显示 null,根本没有错误)。您可以在底部看到我的模型文件和代码的其他部分。控制器:fu
2024-02-06
如何使用C#中的Regex.MatchCollection函数获取字符串中所有符合正则表达式的部分
如何使用C#中的Regex.MatchCollection函数获取字符串中所有符合正则表达式的部分,需要具体代码示例正则表达式是一种强大的模式匹配工具,在C#中,可以使用Regex.MatchCollection函数来获取字符串中所有符合正
2023-11-18
从数据库中带有 imageurl 的文件夹获取图像,并在我的浏览器中使用 golang 中的 echo 显示该图像
php小编鱼仔在这篇文章中将向您介绍如何从数据库中带有imageurl的文件夹获取图像,并使用golang中的echo在浏览器中显示该图像。这个过程涉及到从数据库中查询imageurl,然后使用golang中的echo库将图像数据发送到浏览
2024-02-11