问题标签 [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.

0 投票
1 回答
1457 浏览

mongodb - 如何在 mgo 中使用 $pushAll

我像这个结构一样存储

在 mongodb 中,然后我想更新标签添加一些其他标签,我找到了 $pushAll,但我无法使用它。

我试试

但这是错误的。

0 投票
1 回答
79 浏览

go - 将方法转换为通用方式,使用 mgo 查找

我试图让 getObj() 函数更通用,并且可以与任何类型一起使用,而不仅仅是像我的代码中那样的用户。我在想一个接口而不是一个定义的结构,但我不能把这个想法融入我的代码,请有人帮我解决这个问题吗?
提前致谢

0 投票
1 回答
821 浏览

go - 打开数据库的最佳实践

注意:我不确定这是否是这篇文章最准确的标题,如果不是,请建议更好的标题。

目前我正在创建一个服务器,其中有几个处理程序(使用goji)。收到请求后,我想与我拥有的 MongoDB 数据库进行交互(使用mgo)。我的问题是:

我假设每次处理请求时都做这种事情很昂贵:

那么,拥有一个可以从处理程序内部访问的全局变量对我来说会更好吗?所以我会用这样的东西:

我的问题与这里的最佳做法有关?每次请求进入时打开数据库,或在整个应用程序期间保持打开状态。

0 投票
2 回答
1246 浏览

mongodb - 如何使用 mgo 从文档中解组命名类型别名?

我有一个带有 updated_at 字段的结构,我想将其 JSON 编码为 un​​ix 时间戳。

我尝试了以下似乎不起作用的方法,updated_at 字段永远不会从 MongoDB 文档中解组:

我找到了一个临时解决方案,编写结构的 MarshalJSON 函数,执行如下操作(将 UpdatedAt 类型更改为 *time.Time):

这样做有更好或更优雅的解决方案吗?

0 投票
1 回答
779 浏览

struct - 转到另一个结构中的自定义结构类型

我正在努力理解如何将自定义结构保存在另一个结构中(以及许多其他东西)。目前我的代码如下所示:

现在,我想摆脱 getAll 函数中的 var results []dogs 。相反,我想以某种方式从我的 Stuff 结构中获取 []dogs 位,但我不知道如何。

这就是我调用这个函数的方式:

那么我怎么能对我的 Stuff 结构做类似 s := NewStuff(collection, dogs) 之类的事情而不在 Stuff 中将其声明为狗类型(它可以是任何东西,在另一个函数中它可能是我所知道的猫......) ?

关键是我想将这个 getAll 函数重用于任何其他类型,而不是为我的所有 63 只动物创建几乎相同的 getAll 函数。喵。

0 投票
1 回答
137 浏览

mongodb - 如何通过mgo获取未知的mongo doc

这是一段试图从 mongodb 获取所有文档的代码。

我收到错误:语法错误:意外的变量

这里有什么问题?有没有更好的方法来通过 mgo 获取任意 mongo 文档?

谢谢

0 投票
1 回答
4779 浏览

go - golang/mgo:从插入中省略空字段

出于某种原因mgo,即使我设置了 omitempty 选项,也会将空结构作为空值插入到数据库中。

json 编码器省略了该SomeA属性,但在数据库中它以"a" : null. 我做错了什么,或者根本不可能这样做?

0 投票
2 回答
139 浏览

mongodb - 去mgo新纪录?

是否可以使用 检测我是在处理新记录还是旧记录mgo

我的意思的一个例子是在 Rails ActiveRecord 中实现的:

object.new_record?

0 投票
2 回答
4317 浏览

mongodb - 如何在mgo(Go)中使用接口类型作为模型?

假设您有一个由多个不同类型的嵌入式节点组成的工作流。由于节点的类型不同,我想在这里使用 Golang 接口并想出了以下内容:

这些工作流存储在 MongoDB 中,我在其中有示例种子数据。使用 mgo,当我尝试查找工作流(给定其 ID)时:

我收到错误 - bson.M 类型的值不可分配给 Node 类型。

我也觉得有点奇怪,mgo 如何在没有任何类型信息的情况下将嵌入的 Node 文档解组到 Go 结构中。可能我需要从另一个角度看问题。

任何建议将不胜感激。

0 投票
1 回答
1757 浏览

go - Golang / mgo - 在更新条件下设置“$set”

如何将 $set 部分添加到现有的 bson.M?一定有办法做到这一点,但我找不到。