草庐IT

doctrine_registry

全部标签

mongodb - Doctrine2 Mongodb 添加更多 $or 运算符

doctrine2ODM可以创建以下查询吗?db.Product.find({"$or":[{"name":newRegExp("test*","i")},{"tags":newRegExp("publictrue*","i")}],"$or":[{"public":false,"_id":{"$in":[ObjectId("4e74121c4fcfa9ff7ac90000"),ObjectId("4e74121c4fcfa9ff7ac80000")]}},{"public":true}]});我不明白doctrine2的主要问题是如何在$query中添加$or?这对我仍然缺少$and

mongodb - 不存在的服务 "fos_user.doctrine_registry"

((Symfony2.7/3-Doctrine:Youhaverequestedanon-existentservice"fos_user.doctrine_registry")这个修复对我不起作用。更新中的一些东西坏了,转到旧版本修复了它。))我正在尝试将我的应用从doctrine转移到mongodb。我严格按照此操作,但出现以下错误。[Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException]您请求了一个不存在的服务“fos_user.doctrine_registry”。我已将其缩小到提供程序

php - Doctrine ODM/PHP/MongoDB - 无法查询引用的元素

我有一个事件,它有一个权限,这个权限引用了一个用户。我正在尝试获取与用户关联的所有事件,但我似乎无法按照我的意愿让原则发挥作用。这是我的Mongo模式Array([_id]=>4e63903cbc3470a2cd000002[date]=>2011-10-09[name]=>Event1[privileges]=>Array([0]=>Array([user]=>Array([$ref]=>users[$id]=>4e63611cbc347053a2000001[$db]=>eventdb)[role]=>admin))[url]=>Event1)学说事件实体:classEvent{/

php - doctrine odm,查找 id 不是对象 id 的文档

在我的mongodb中,我有一个集合,其中的id-field不是一个object-Id我不知道为什么它是这样构建的,我不能从头开始更改它,因为可能有很多软件已经在使用这种模式。但是,这样的Icecream文档是这样的:{"_id":"52d0283ae4b01db941dd763b","insertDate":ISODate("2014-01-10T17:04:58.617Z"),"language":"en","profile":ObjectId("50e577602b5e05e74b38a6c8"),"related":ObjectId("516c0061975a299edc44b

mongodb - Doctrine/MongoDB/Strategy - 使用 persist/flush 更新文档

我正在对mongo数据库文档运行单元测试...发现找到现有对象后我可以更新它的唯一方法是在注释中设置(strategy="set")。有谁知道为什么必须设置这个?更好的是,当使用该设置时,这到底会发生什么变化? 最佳答案 strategy="set"属性指的是文档属性上的@Collection注解:http://docs.doctrine-project.org/projects/doctrine-mongodb-odm/en/latest/reference/annotations-reference.html#collectio

mongodb - Doctrine ODM/MongoDB : How to query for references within embedded documents?

我是DoctrineODM的新手,我完全被一个简单的查询所困:(让我从文档结构开始:Array([_id]=>4ee1e4527f749c9411000012[voteList]=>Array([_id]=>4ee1e4527f749c9411000013[votes]=>Array(...stripped...)[latest]=>Array([_id]=>4ee1e4527f749c9411000014[rating]=>1[voter]=>Array([$ref]=>Voter[$id]=>4ee1e4527f749c941100000f[$db]=>x_test)))...st

php - 当在 Doctrine MongoDB 中删除该对象时,我该如何删除对该对象的任何引用?

我的页面出现以下严重错误The"WildkatProxy\DocumentsTagProxy"documentwithidentifier"4e90eede17bc2ec68c000001"couldnotbefound.我假设这是因为文档标记代理已从另一个操作中删除,因此引用不再有效。我现在想删除对该对象的陈旧引用,但要默默地删除。(因为这也可能在很多其他情况下发生)当对象被删除时,我是否可以对所有引用已删除对象的对象进行“反向级联”?实现此目标的最佳做法是什么?谢谢安迪 最佳答案 我假设您有两个集合,ArticleTag和Art

php - 添加附加查询时,Doctrine MongoDB geoNear() 实例设置为 0

我正在使用geoNear()来计算我的Mongo数据库中对象之间的距离。即使使用->field('name')->equals($name)等附加字段过滤器,查询也能完美运行...这会自动填充对象上的映射字段@ODM\Distance。$this->getQueryBuilder()->geoNear((float)$query['near_longitude'],(float)$query['near_latitude'])->spherical(true)->distanceMultiplier(self::EARTH_RD_KM);如果我添加一个->field('id')->in

php - doctrine ODM 加载相关文档导致查询过多

我一直在尝试减少WebAPI上的数据库查询数量。我的数据库有3个集合:playground、widget、token一个Playground有很多小部件,一个小部件有一个token。每个关系都使用referencesOne/referenceMany。这是我的简化模型/***@MongoDB\Document()*/classWidget{/***@MongoDB\ReferenceOne(targetDocument="Token",inversedBy="widgets")*/protected$token;/***@MongoDB\ReferenceOne(targetDocum

mongodb - Native Mongo Query Doctrine ODM

在关系数据库的Doctrine中,我们有QueryBuilder,可以手动编写DQL查询,如果我们真的必须,可以使用Doctrine的连接来执行原始SQL。我没有在doctrine的mongo项目中找到(也没有在API和文档中)执行此操作的方法。如何使用mongoodm执行native查询?(除了注入(inject)doctrine_mongodb.odm.default_connection,还是那真的是唯一的方法?) 最佳答案 在您的文档存储库中,您可以像这样添加一个私有(private)方法:privatefunction_g