问题标签 [django-mongodb-engine]

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 回答
279 浏览

django - 如何在模型中定义参考字段

我刚刚按照此处的说明安装了 Django MongoDB 引擎,并想在我的模型中定义一个 ReferenceField,就像人们在这里使用 mongoengine 所做的那样。

但是,我无法确定如何使用mongoDB-engine定义文档引用字段。我已经考虑过使用EmbeddedModelFields,但是要引用的模型本身就具有相当的意义,所以嵌入它对我来说毫无意义。

我知道 Django mongoDB 引擎的文档仍在开发中,所以我想也许有人知道一些未记录的功能。

0 投票
3 回答
1033 浏览

python - Mongoengine、flask-MongoEngine 和 Django-MongoEngine 的区别?

Mongoengine、flask-MongoEngine 和 Django-MongoEngine 项目之间有什么区别?

我在我的 Django 项目中使用 Mongoengine。如果我改用 Django-MongoEngine,我会得到什么好处吗?

0 投票
1 回答
62 浏览

django - 将 django 与 mongodb 一起使用时会丢失哪些功能?

我正在评估我是否想在我的下一个项目中使用 mongoDB 和 django。不过,我不确定的是,当我使用不受官方支持的数据库后端时,我会丢失哪些功能(ORM、管理员、表单等)。

我考虑使用mongodb-engine

0 投票
1 回答
933 浏览

python - Mongo + Postgres + Django 测试错误 - 多个数据库(Django-MongoDB-Engine)

我一直在尝试让我的 django 测试为我正在构建的 API 工作。我对 Python 比较陌生,并且已经坚持了一段时间。

一些简单的事实:

  • 我正在使用 2 个数据库 - 我的用户使用 postgresql 数据库,其他所有数据库使用 mongo 数据库。
  • 我正在使用 TastyPie、Django-MongoDB-Engine、Djangotoolbox、Django-Non-rel、Pymongo 和 psycopg2
  • 我已成功连接到数据库。当我从 shell 中保存 auth_user 时,它会保存到 sql 数据库中,而我的应用程序中的模型会保存到 mongoDB

我必须将它与另一个 API 集成,因此仅限于我对数据库和库的选择。

我的大问题是测试 - 我无法让它工作。

当我尝试使用 ./manage.py 测试运行 Django 的测试时,我不断收到此错误:

经过广泛的搜索,我仍然不确定它是什么。我知道显然有些东西正在尝试使用我的 MongoDB 进行身份验证,然后它不允许它。我不介意使用这个数据库进行测试,因为它无论如何都是一个测试数据库。

请帮忙!我的配置和错误消息如下。


我将数据库设置设置为包括两个数据库,如下所示:

如您所见,我创建了自己的自定义路由器:


完整的跟踪在这里:

任何帮助表示赞赏!

0 投票
3 回答
1729 浏览

django - Django rest-framework DjangoModelPermissions 的问题允许任何经过身份验证的用户

我正在尝试使用 DjangoModelPermissions,但它似乎无法正常工作。

这是代码:

我认为在这种情况下没有任何区别,但我使用的是 django_mongodb_engine。

我有一个没有权限的用户,它能够创建测试实例。另一方面,我怎样才能阻止 GET 以便只有具有正确权限的用户才能执行该操作?

谢谢

0 投票
1 回答
321 浏览

django - 使用多个数据库(MySQL 和 MongoDB)在 Django 上执行测试

我正在尝试在我正在开发的应用程序上运行测试,但我遇到了问题。该应用程序使用 2 个数据库,一个 MySQL 用于配置和关系数据,一个 MongoDB 用于其他一些非关系记录。当我正常使用它时它可以工作,因为 Y 只是 syncdb 关系数据库......但是当我尝试运行测试时,Django 正在尝试同步两个数据库然后崩溃,因为它在模型的 mongo 中出现了一些错误。有什么建议么?

这是数据库的配置:

路由器:

测试代码:

0 投票
0 回答
134 浏览

python - “改用‘索引’。”,弃用警告)

我练习Django 书第 10 章:高级模型并遇到问题

我将这些代码复制到我的model.py中,然后python manage.py sqlall books 按照网站所说的在终端中运行,但是有错误。

是因为我的数据库是 django-mongodb-engine 吗?

模型.py:

请帮我。谢谢

0 投票
1 回答
278 浏览

django - 通过 haystack 在 solr 中索引 mongodb 数据

最近,我将我的一些数据库数据从 postgres 更改为 mongo,以便获得更好的性能并且因为 mongodb 的灵活性(我的数据库已经很大,现在我必须在相同的模型上支持 5 种以上的语言)

我正在使用带有 django-haystack 的 solr 进行索引,但是我无法使用 haystack 将直接 mongodb 模型索引到 Solr。

我使用的 mongo 后端是 Django MongoDB Engine。

我一直无法找到有关它的太多信息。也许是因为我实际上在做什么没有多大意义。

提前致谢

0 投票
1 回答
190 浏览

django - 在 django 中没有 save() 的情况下进入 mongolab 沙箱数据库

我拥有的是带有 Mongo 引擎的 Django 设置。我使用了 heroku 的 mongolab 沙盒插件。在使用通过 heroku 提供的 mongolab 设置在本地运行时,我观察到如果我创建模型的实例,它会保存到 mongolab。它甚至不要求 save() 函数。

我有以下安装:

我也安装了 pymongo

设置.py:

模型.py:

在我的 python shell(python manage.py shell)上:

这会在这一步本身保存到 settings.py 上指定的数据库中。

来自文档:

MongoEngine tracks changes to documents to provide efficient saving. To save the document to the database, call the save() method. If the document does not exist in the database, it will be created. If it does already exist, then any changes will be updated atomically

难道我做错了什么?这是我第一次使用MongoDB

0 投票
1 回答
267 浏览

django - 运行测试时 Django-nonrel + MongoDB 错误

我在虚拟环境中有一个设置:

一切正常,唯一的问题是在运行测试期间。每次 django 在运行测试函数后尝试刷新数据库时都会抛出错误:

所以对于每个测试用例,我都有通过或失败,就像它假设的那样,但我也得到了这个烦人的错误。

我确实运行了django-admin.py sqlflush --settings=dev_settings --pythonpath=.,它很好地刷新了我的开发数据库,​​没有错误。

在几个测试函数中,我检查了从数据库中提取的几个模型,它似乎可以很好地刷新和重新创建对象,所以这就是它不会影响实际测试用例的原因。

我浏览了整个回溯,我有点理解它为什么会发生,但我不知道如何处理。任何帮助表示赞赏。

编辑

刚刚尝试使用 Django-nonrel-1.5 运行测试,没有问题。这似乎是 1.6 版本中的一个错误。