问题标签 [mgo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
installation - 如何从下载源安装 golang 3rd-party 项目?
我正在尝试安装mgo,它是一个用 golang 编写的 mongo 驱动程序。
标准命令:
但由于一些证书问题,它失败了。
所以我手动将mgo的源下载到本地E:\mgo
,但我不知道如何安装它。
文件树:
我试过了:
它报告:
但是,如果我尝试先安装 bson:
它报告另一个错误:
那么,安装它的正确命令是什么?
mongodb - 带有 mgo 的 Go (golang) 中的 MongoDB:如何更新记录、确定更新是否成功并在单个原子操作中获取数据?
我在 Go 下为 MongoDB 使用 mgo 驱动程序。
我的应用程序请求一个任务(仅在 Mongo 中从名为“jobs”的集合中选择一个记录),然后将自己注册为受让人以完成该任务(对同一“工作”记录的更新,将自己设置为受让人)。
该程序将在多台机器上运行,都与同一个 Mongo 通信。当我的程序列出可用任务然后选择一个时,其他实例可能已经获得了该分配,并且当前分配将失败。
如何确定我读取然后更新的记录在更新时是否具有特定值(在本例中为受让人)?
我正在尝试获得一项任务,无论是哪一项,所以我认为我应该首先选择一个待处理的任务并尝试分配它,以防万一更新成功。
所以,我的查询应该是这样的:
“从集合 'jobs' 的所有记录中,仅更新一个assignee=null 的记录,将我的 ID 设置为受让人。 然后,给我该记录,以便我可以运行该作业。”
我怎么能用 Go 的 mgo 驱动程序来表达呢?
mongodb - 对嵌套文档字段使用 mgo
我正在将 Golang 与 mgo 驱动程序一起用于 mongodb。
根据http://labix.org/mgo上的示例,一切都很好。但我找不到任何文档 mgo 如何支持“点表示法”以设置和删除嵌套字段。那么,如何访问嵌套字段?
另一个问题与 go Lang 名称约定有关。当我用 s.FindId(...).One(&doc) 填充我的结构时,doc 是否可以包含带有小写名称的字段,例如“timer”而不是“Timer”?
mgo 是否有可能从 mongo 获取非结构化文档并仅返回 map[string]string?
mongodb - Golang/mgo:如何让 MongoDB 在字段中使用当前时间?
我有这个结构与我正在使用的 MongoDB 集合的类型相匹配:
我希望 LastSeen 字段保存与该特定应用程序的最后一次交互时间。因此,应用程序自己注册设置当前时间(作为字符串)。
我想要的是 Mongo 在插入时将其自己的当前时间动态设置到该字段中,就像 MySQL 的 NOW() 函数一样。
我有这个辅助功能:
我试过这个:
LastSeen 字段被存储为脚本而不是评估:
所以,我认为有几个问题:
首先,如何插入当前时间?
其次,我怎样才能得到一些 javascript 评估而不是插入?
第二个的答案可能足以回答第一个,但也可能不是。
mongodb - 我如何要求 MongoDB 评估一些 JavaScript 以获得字段的值?
我想让 MongoDB 动态地为我插入的文档的一个字段分配一个值。例如:MongoDB 服务器的当前时间,就像 MySQL 中的 NOW() 一样。
我试过这个:
我有这个辅助功能:
LastSeen 字段被存储为脚本而不是评估:
我怎样才能得到一些 javascript 评估而不是插入?
mongodb - 为什么 mgo 不返回插入文档的 ID?
根据文档(http://godoc.org/launchpad.net/mgo/v2),如果您使用 Upsert 方法,您可以获得“Upserted”文档的 ID。
还有一个不提供此功能的 Insert 方法。
这是为什么?如果我想执行插入而不是 Upsert 怎么办?(或者永远不会有任何正当理由想要这样做?我开始怀疑了。)
mongodb - Golang/mgo:无法从 MongoDB 文档中检索 int 字段的值
我正在查询一个在其值中包含一个整数值的集合,并将生成的文档加载到此结构中:
这是 phpMoAdmin 向我展示的:
它subscription.TimeoutSeconds
总是包含 0 让我感到困惑,当我 确定我30
在我插入到集合中的文档中时。
所有其他值都可以正常检索。
int 类型有什么问题?
mongodb - 使用 Go 检索 MongoDB 文档的问题
我有以下代码,但我不确定为什么它没有返回一片 Notes。我正在使用来自 labix.org 的 mgo 库连接到 MongoDB 并遵循他们的在线文档。
如果我只是打印出来,notes
我会得到看起来像两个结构的切片,但我无法通过notes.Title
类似的方式访问它们。
这是我的文件的样子:
真正的问题是它将笔记作为一大片而不是Note{}
(我认为?)
如果我做的事情明显错误,任何见解都会有所帮助。
mongodb - 使用 golang 和 mgo,如何在 MongoDB 中搜索一系列值?
我研究了mgo 主页上的示例,但我正在努力寻找一种方法来查询一系列值。该行:
searchResults, searchErr = SearchReading(bson.M{"k": key, "t": { $gte: start, $lte: end } }, limit)
失败:
line67: syntax error: unexpected $
line67: missing type in composite literal
我遗漏了一些非必要的代码......
go - 使用golang的mgo库,如何检索列表等嵌套对象
我正在尝试检索填充此类的对象:
数据字段“人”作为空切片 [] 出现。我正在使用简单的查找来获取数据。
我究竟做错了什么?
弄清楚了....
答案可以在这里找到: https ://groups.google.com/d/msg/mgo-users/KirqfCSlKFc/t2l3l4yxFRwJ
基本上,只需要在 People []Person 行的末尾添加 'bson: ""'