草庐IT

doctrine-mongodb

全部标签

php - 当 Doctrine 查询加入时,setMaxResults 不能正常工作

我想编写一个DQL查询来选择发布并加入另一个实体。这是我的代码:$dql='SELECTp,h,t,mFROMApp:PostpLEFTJOINp.mentionsmLEFTJOINp.tagstLEFTJOINp.filehWHEREp.userIN(SELECTfFROMApp:UseruJOINu.followersfWHEREu.id=:uid)ORp.user=:uid';$query=$this->getEntityManager()->createQuery($dql)->setMaxResults(5)->setParameters(['uid'=>$user->get

php - 在 Doctrine_RawSql 查询中聚合值

是否可以在Doctrine_RawSql查询中使用聚合值?这是我正在尝试做的事情:$q=newDoctrine_RawSql();$q->select('{q.*},AVG(a.value)ASavg');$q->from('--complexfromclause');$q->addComponent('q','Question');但是,由Doctrine创建的SQL仅保留表question中的列并省略聚合值avg。 最佳答案 我以前从未使用过Doctrine_RawSql,但我使用以下两种方法之一通过Doctrine完成了原始S

php - Doctrine ORM,两个不同的查询产生相同的结果集

我正在使用Doctrine1.2和Symfony1.4。在我的操作中,我有两个不同的查询返回不同的结果集。不知何故,第二个查询似乎改变了第一个查询的结果(或引用?),我不知道为什么......这是一个例子:$this->categories=Doctrine_Query::create()->from('CategorieASc')->innerJoin('c.ActiviteASa')->where('a.archive=?',false)->execute();print_r($this->categories->toArray());//Return$this->categori

php - Doctrine 一对多无连接表

我正在使用Doctrine,我想知道我是否可以在不使用连接表的情况下建立一对多关系? 最佳答案 取决于您希望它是单向的还是双向的。单向一对多只能通过jointable实现,出于“意识形态”的原因,来自Java的hibernate:http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/association-mapping.html#one-to-many-unidirectional-with-join-table假设您有一个包含许多产品

php - 不同束中实体之间的 Doctrine 关联映射或来自两个不同束的相关实体?

地区:namespaceAcme\RegionBundle\Entity;classRegion{private$id;/***@ORM\OneToMany(targetEntity="User")*@ORM\JoinColumn(name="region_id",referencedColumnName="id")*/private$users;}用户:namespaceAcme\UserBundle\Entity;classUser{private$id;private$region_id;}如何在不提及完全指定的实体路径(即硬编码依赖性)的情况下关联来自不同包的实体。有没有更好的

php - 级联坚持不工作(Doctrine ORM + Symfony 2)

几个月前我开始使用symfony,有一件事一直困扰着我。当我在Doctrine中有一个一对多的关系时,我试图向数据库中插入一些东西。这是一个例子:经纪人.orm.ymlAcme\DemoBundle\Entity\Broker:type:entitytable:brokersrepositoryClass:BrokerRepositoryid:id:type:integergenerator:{strategy:AUTO}fields:name:type:stringlength:255slug:type:stringlength:64oneToMany:accountTypes:ta

php - Doctrine QueryBuilder 重用部分

我想计算所有符合我的条件的字段,并使用条令查询生成器逐页获取它们。我生成的查询取决于我的过滤字段。第一部分是计算记录数,这样我就可以计算页数了。$qb=$em->createQueryBuilder();$qb->select('COUNT(m.id)')->from('CSMediaBundle:MediaItem','m')->where($qb->expr()->eq('m.media',$media->getId()));$filters=$request->request->get('filter');if(!empty($filters['size'])){foreach(

php - Doctrine2,按多对多属性的计数获取实体顺序

我有两个实体文章用户文章与名为“likedByUsers”的用户有关系现在,我想按喜欢的数量排序文章,但是:我不想拥有“numberOfLikes”属性,因为更新它太麻烦了我有太多的文章(100k+),无法在PHP端进行“排序”(事实上我们已经达到排序的极限,这就是我问这个问题的原因)我可以忍受没有得到返回值中的点赞数(因为序列化程序稍后会对其进行水合)我目前拥有的是:$builder=$this->createQueryBuilder('a');->select('COUNT(u)ASnbrLikes')->leftJoin('a.likedByUsers','u')->orderB

php - Doctrine 不会挽救一对多的关系

我被一个看起来非常非常令人费解的问题所困扰。仅供引用-我知道并且我已经阅读了这里的大部分Doctrine问题,所以我了解Doctrine和指定关系的基础知识。下面是我的数据模型的样子(发布相关代码部分)classSample{/***@ORM\OneToMany(targetEntity="Analysis",mappedBy="sample",cascade={"persist"})*protected$analysespublicfunctionaddAnalysis(Analysis$analysis){$analyses->setSample($this);$this->ana

php - 具有 Symfony 3/Doctrine 属性形式的一对多对一

问题来了:我有一个包含3个类的模型人个人工作工作一个人可以有多个工作,任何工作与人的关系都可以有“date_start”、“date_end”和“comment”属性。所以我用一个包含这些属性的可联合(person_job)构建了这个模型,并在称为person和job的2个manyToOne属性上建立了关系(用原则注释生成)人物属性如下:/***@varstring*@ORM\Column(name="name",type="string",length=255,nullable=false)*/private$name;/***@varstring*@ORM\Column(name=