问题标签 [odm]

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 投票
2 回答
7462 浏览

mongodb - 如何在 Meteor 中使用 Mongoose?

我查看了此处发布的答案:Meteor:与 Mongoose 集成?,但如果可能的话,我正在寻找一个更简单、更模块化的解决方案,以便将 Mongoose 与 Meteor.js 一起使用。

有没有更好的方法来处理我没有见过的 ODM 或原生支持?

0 投票
2 回答
1529 浏览

mongodb - 如何使用 Doctrine ODM 对 map/reduce 的结果进行排序

我在尝试对 map reduce 进行排序时遇到问题。该集合具有附加用户的统计信息(如分数),因此它正在查找用户的最高分数。该部分有效,排序是然后对排行榜的这些结果进行排序。我已将这些函数放入 javascript 变量中并在 mongo 控制台中运行它们,一个简单的 find().sort({'value.max.value':-1}) 在生成的集合上工作正常,但我无法得到它在这里工作。(我的结果无序返回)。

0 投票
1 回答
247 浏览

php - ZF2 ODM MongoDB“需要登录”

我将 ZF2 与 ODM 和 MongoDB 一起使用。当我尝试执行非常简单的任务时,例如:

我收到错误“需要登录”。好吧,我知道为什么这是一个问题,我可以使用以下方法解决它:

有没有办法从 .local/.global 配置文件中添加配置值,或者我可以重新配置配置选项,而不是在每个类中始终使用 db 声明?

非常感谢你。

0 投票
1 回答
1539 浏览

php - Doctrine MongoDB 在没有 ODM 的情况下使用

我在 Symfony2 中使用 Doctrine MongoDB,但现在我想做一些没有 ODM 对我来说更容易的事情,我怎样才能获得 MongoClient 或 MongoCollection 对象?

我想以老式方式使用 MongoDB,例如: http: //php.net/manual/en/mongocollection.find.php

0 投票
1 回答
1480 浏览

php - Doctrine ODM 返回基类的代理对象而不是子类文档

在为我的项目提供新功能的工作中,我决定扩展模型。我决定使用基类,将常用方法分组,只有很少的子类,都保存在一个集合中。

基类,抽象类:

一些具体的类(我还有一些类似的,但有些是抽象的):

在那次转换之后,我打开了我的索引页面,并出现了一个错误 - PHP 试图调用一个抽象方法,因为 Doctrine 返回的对象是类的代理。我以为是因为我将集合从 to 重命名,Application_Model_Image内部对象Application_Model_Entry引用($ref字段 of DBRef)仍然指向- 在我从数据库中删除第一个对象后,第二个对象变得很好。Application_Model_Image

在一个显示单个对象的页面上,对于所有对象,一切正常,所以我认为这可能是 Zend Framework 的寻呼机类迭代结果的原因,所以我跳过了寻呼机并直接从查询中转储了对象。我打印了 100 个第一个结果的类,其中一些具有适当的类(pastebin 上该列表的片段)。我查看了数据库,但我发现数据没有什么特别之处(工作不工作)。我认为引用可能有问题,但正如我在上面所写的,如果同一个对象在结果列表中首先出现,它可能会起作用。

有什么想法或提示吗?我可以调试更多,但我需要被告知在哪里查看 Doctrine 的代码。

0 投票
1 回答
606 浏览

php - mongodb and php transition

I am using opencart (an opensource framework for e-commerce).

It uses only mysql database as its data source.

However due to the current site traffic, I am sure that we can increase our efficiency by using noSQL (Mongodb). Thats great but the issue is how would I go about and integrate Mongodb to use it with Mysql in unison?

I started looking around and found Mandango (http://mandango.org/) for mapping and have better performance than that of doctrine.

However I am not able to get my head around as to how will I map the data. I looks like that ODM uses objects but when I use my model object in this case, would that not be based on the raw SQL queries.To give you an idea, currently Opencart has models that have raw SQL queries. Below is the example of customer model method.

0 投票
3 回答
590 浏览

ilog - 如何单独验证 ilog 变量?

我将使用 ilog jrules 单独验证多个对象(一次一个)。

我目前的想法是将所有需要验证的项目包装在一个名为“itemToValidate”的输入参数中,如下所示

然后在名为“init”的包中名为“init”的规则中获取每个项目并设置为一个变量,例如“雇主”然后对于“itemToValidate”中的每个项目(元素)将有一个包,例如“雇主”与“雇主”相关的规则

我面临的问题是我需要在实际验证之前检查所有规则的空值。

有没有办法避免这种情况?或者我的实施有什么问题吗?

谢谢

0 投票
1 回答
3570 浏览

mongodb - 使用 Doctrine ODM 在 MongoDB 上的引用文档之间进行延迟加载

直升机,

首先,请原谅我的英语不太好。

我正在将 Symfony2 应用程序的数据容器迁移到 MongoDB,然后它与 MySQL 一起运行。

我添加了 DoctrineMongoDBBundle 并且“几乎所有东西”都能完美运行。

我有一些文档之间的引用,我想在其中保留 Doctrine ORM 提供的“延迟加载”模式。我已经阅读了 Doctrine ODM 的官方文档,

以及一些解释如何创建关系和定义文档以获得“延迟加载”行为的示例,

但我不能让它工作。

就我而言,我有两个文件,“旅行”和“笔记”,我想保持 1:N 的关系,如下所示:

当我在旅行中添加注释时,我了解旅行证件的结果应该是:

对于注释文件应该是:

但现在我只在便笺文件中得到参考,而旅行文件中没有参考,当我在旅行文件中查询时,Doctrine 不加载相关的便笺文件:

我为旅行添加注释的过程如下:

任何获取 $travel->getNotes() 方法的想法或建议都可以通过“延迟加载”自动检索引用的笔记。

非常感谢您的贡献,

萨卡里亚斯

0 投票
2 回答
435 浏览

mongodb - 如何从嵌入文档的键值类型中获取准确的文档结果

假设我有这种结构的文档,属性字段将是嵌入的文档,我已经索引了 attributes.key 和 attributes.value

我的问题是如何在仅基于属性字段进行查询时获得准确的文档,

查询结果与我预期的不一样,它应该只产生第二个文档而没有第一个文档。我知道我将正则表达式放在attributes.value 上,我期望它只检查具有地址值的attributes.key。

如果我想过滤另一个键怎么办,比如,

任何意见都会对人有所帮助。谢谢。

0 投票
1 回答
429 浏览

mongodb - 传递文档数组时,Mongoose 中 Model.create 的原子性

所以我知道 MongoDB(以及代理 Mongoose)不支持事务,但涉及单个文档的操作始终是 atomic。在查看 Mongoose 文档时,我遇到了 Model.create ,它允许传递一组文档并将它们存储在一个动作中,如下所示:

这个动作是原子的吗?Mongo 是一次保存所有文档,还是 Mongoose ODM 循环遍历数组,一次保存一个文档?源(或源代码)将不胜感激。(另外,我是新人,所以请不要拍!)