问题标签 [mongoengine]

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 投票
0 回答
1099 浏览

django - 在 mongoengine (Django) 应用程序中处理 pymongo 的 AutoReconnect

mongoengine 0.4,django 1.3.1,uwsgi 1.0.2.1

一直把我的头撞在墙上。我有一个使用 mongoengine 的 Django 应用程序。mongodb 服务器与我的应用程序服务器不同,某些事情(防火墙规则更改等)会导致连接丢失。

在这种情况下,我想实现处理自动重新连接,以便我的整个应用程序在/如果发生这种情况时不会崩溃。我正在尝试这些方面的东西:http: //pastebin.com/HE8LSp5v(注意这不是我的代码,尽管我尝试修改它以使其工作但没有成功)

该 pastebin 中的代码将成功检测到故障并尝试重新连接,但 for 循环通常不会重复多次,所以你看到的是每秒多次重新连接尝试,我猜每个 uwsgi 线程一次.

所以我稍微修改了代码(改为https://gist.github.com/1723790)并将其放在我的 settings.py 文件的底部。uwsgi 和开发服务器的结果是一样的,所以为了简单起见,我将在这里使用开发服务器。

启动开发服务器,我得到:

随着 mongoengine 的运行,我访问了一个向其中发出一些请求的页面。工作正常。然后我关闭 mongodb 并刷新页面。我在屏幕上打印出这样的东西:

这种情况一直如此,直到我重新启动 mongodb,此时页面正确呈现并且一切正常。我不想将此代码投入生产,因为我不确定这里到底发生了什么。看起来它可能正在递归到循环中,并且没有将发生的 AutoReconnect 异常正确地拉回。我想接下来要尝试的可能是检查每个操作的堆栈以确切了解发生了什么。

0 投票
1 回答
331 浏览

python - MongoEngine doesn't see pre-existing records

I set up my model in MongoEngine, and try to query it (I already have a few dozen documents in my collection), but the queryset is empty:

I can add new documents, and those show up in subsequent queries, but there's sign of my preexisting documents:

What gives? For reference, here's my model definition:

In case this question gets answered by the author of MongoEngine himself, I wish to express in advance that YOU ARE AWESOME!

0 投票
1 回答
3358 浏览

python - Mongoengine ReferenceField 问题

我想创建一个参考字段,它采用与它将成为成员的文档类型相同的文档类型,但它不起作用,我不知道如何解决这个问题。我是否忘记了什么,或者我必须以其他方式来做?

这是我在使用“DatabaseUser”时遇到的错误:

这是使用“self”时的错误:

我在 Windows 7(64 位)上使用 Python 2.7.2(64 位)和 Mongoengine v.5。

0 投票
3 回答
7542 浏览

python - 使用 MongoEngine 自动增量

我正在使用 Flask 和 MongoEngine 开发博客引擎,并且我的帖子需要顺序 ID。

我需要 MongoEngine 为每个新帖子创建一个新 ID,所以我正在考虑做这样的事情:

这行得通吗?有一个更好的方法吗?

0 投票
2 回答
1219 浏览

python - 无法查询 ListField(EmbeddedDocumentField)

我有以下型号

我想搜索具有 (name = "computer skills and level >5) 技能的 Agent

我写了以下查询:

如果代理具有名为“计算机技能”且级别 = 3 的技能,并且还具有名为“英语技能”且级别 = 10 的技能,则该代理将在查询结果中

0 投票
1 回答
160 浏览

django - 在 mongoengine ReferenceFields 中存储派生类引用是否正确?

我想知道是否可以将子类引用分配给已传递基类的构造函数的引用字段。例如:

cr=d 行是否有效?

还是我需要使用 GenericReferenceField?

0 投票
1 回答
1458 浏览

python - Mongoengine.. select_related() 不起作用

我是 django 和 mongoengine 的新手..所以我不确定我的代码在这个问题上是否正确..

query = Example.objects().select_related(max_depth=0) 查询变量不应该有成员字段吗?这样当我编码时

但结果将是成员的名字,如 Simson..

在我的实际应用程序中,我不想使用取消引用..即使类(文档)有 ReferenceField,我也不想使用“仅()”,“排除”方法..

即使类(文档)有自己的 ReferenceField,如何让 mongoengine 不使用取消引用?

(我只是为将来实现了 ReferenceField 以便有一天使用它..但不是现在)

0 投票
2 回答
1967 浏览

python - Mongoengine.. 反转 ListField 中的项目

如何通过 Comment EmbeddedDocument'date 反转评论列表字段的结果?我不正确的代码..就像..

有没有办法通过 EmbeddedDocument 的日期来反转 ListField?或者只是反向列表字段?

0 投票
2 回答
6335 浏览

python - Mongoengine ... 查询不在 ListField 中的内容?

例如..

在这种情况下,我们可以像这样在标签列表中找到一个值。

如果标签类似于 ['coding', 'x', 'y'],那么文档将被匹配...

但我的问题是如何找出不在列表字段中的值。

我不正确的代码是..

或者

或者

但是..他们不只是工作..

如何查询在 ListField 中没有给定值的文档?

0 投票
1 回答
212 浏览

mongodb - 从另一个文档中更新文档 - mongoengine

我在集合中有以下代码:

在里面find_another_document_and_update_it()我查询数据库并检索一个文档 A。然后我在 A 中增加一个计数器。然后在foo()调用之后find_another_document_and_update_it(),我还保存当前文档让我们说 B。问题是虽然我可以看到 A 中的计数器是实际上在self.save()被调用时增加,文档 A 被重置为其旧值。我想问题与并发问题以及 MongoDB 如何处理它有关。我感谢您的帮助。