doctrine-orm相关内容

如何在没有教义关系的情况下加入?

我有一个实体 Log(表 log),其中包含成员 resourceType 和 resourceId(带有列 resource_log 和 resource_id).resourceType 可以例如Order(用于订单操作,例如状态更改)或 Whatever(用于 Whatever 相关操作).Log 和“资源"实体/表之间没有任何关系(Doctrine 和数据库中都没有). 现在我只想选 ..
发布时间:2022-01-16 17:40:10 PHP

我如何在学说中使用 php8 属性而不是注释?

这是我想使用的: #[ORM\Column(type: "string")] 而不是这个: /*** @ORM\Column(type=“字符串")*/ 但是我收到了这个错误: (错误:类 'Column' 未使用 'Attribute' 注释) 是因为 Doctrine 还不支持,还是我遗漏了什么? 解决方案 正如@Seb33300 所说,是的,它是 现在可能.但是对于 Sy ..
发布时间:2022-01-16 17:39:44 PHP

原则分离、缓存和合并

我正在使用 Doctrine 2.3.我有以下查询: $em->createQuery('选择 u、c、pFROM 实体\用户 uLEFT JOIN u.company cLEFT JOIN u.privilege p哪里 u.id = :id')->setParameter('id', $identity) 然后我接受它,得到结果(这是一个数组,我只取第一个元素),然后运行 ​​detach ..
发布时间:2022-01-16 17:38:51 PHP

教义合并:日期时间字段始终更新

我用现有的 Id 创建了一个新实体,我想更新相关的数据库记录. 学说合并一直是我最好的朋友:识别是否有更改并生成正确的更新查询. $entity = new Entity();$entity->setId(1);$entity->setName('test');$EntityManager->merge($entity);$EntityManager->flush(); 假设 id=1 ..
发布时间:2022-01-16 17:38:45 PHP

原则 2:如何将一个对象的所有值克隆到另一个对象上,除了 ID?

在 $entity 变量中,有一个与 $other_address 相同类型的对象,但所有字段值都被填写. 我想将 $other_address 对象中的所有字段设置为与 $entity 对象具有完全相同的值. 这在少于 N 行中是否可行,其中 N 是我需要设置的字段数? 我尝试了“克隆"关键字,但没有成功. 这是代码. $other_address = $em->ge ..
发布时间:2022-01-16 17:37:45 其他开发

守护程序中的 Doctrine2 连接超时

我有一个长时间运行的守护进程(Symfony2 命令),它从 Redis 中的工作队列中获取工作,并使用 orm 执行这些工作并写入数据库. 我注意到,当工作人员空闲等待工作时,由于与 MySQL 的连接超时,工作人员有死亡的趋势. 具体来说,我在日志中看到:MySQL Server has gone away. 无论如何我可以让学说自动重新连接吗?或者有什么方法可以手动捕获异常 ..
发布时间:2022-01-16 17:36:39 PHP

原则 2:查询结果为关联数组

在我的 Repository 类中,我使用以下代码进行查询: $query = $this->getEntityManager()->createQuery("选择 s.term, COUNT(s.term) 作为频率FROM App\Entities\SearchTerm sGROUP BY s.termORDER BY s.term ASC");$result = $query->getRe ..
发布时间:2022-01-16 17:35:46 PHP

将条件数组传递给教义 expr()->orx() 方法

我需要像这样使用 QueryBuilder 构造 DQL [QUERY]... AND WHERE e.type = x OR e.type = Y OR e.type = N [...] 我在数组中有类型 如何将这个数组传递给我的查询生成器? $qb->andWhere($qb->expr()->orx(CONDITIONS)); 类型列表将是动态的,在每个 foreach 类型循环上调 ..
发布时间:2022-01-16 17:35:05 PHP

Doctrine 2 - 在多对多关系中记录更改

我使用 可记录的行为扩展来记录我的更改实体.我也想记录多对多关系的变化.我想向用户展示这种更改日志: +---------------------------------------------------+|文章“我的文章"更改日志:|+--------+------------+-----------------------------+|谁 |什么时候 |什么|+--------+---- ..
发布时间:2022-01-16 17:34:42 PHP

Doctrine 2 不能在 manyToOne 关系中使用 nullable=false?

一个User 有一个与之关联的Package.许多用户可以参考同一个包.User 不能在没有定义 Package 的情况下存在.User 应该拥有该关系.关系是双向的,因此 Package 中有零个或多个用户. 这些要求导致 User 的 ManyToOne 关系和 Doctrine 2 中 Package 的 OneToMany 关系.但是 user 表(即外键)中的 code>packa ..
发布时间:2022-01-16 17:34:32 其他开发

如何检查 Doctrine 2 中的实体是否更改?

我需要检查持久化实体是否已更改并需要在数据库中更新.我所做的(但没有工作)如下: $product = $entityManager->getRepository('Product')->find(3);$product->setName('一个不同的名字');var_export($entityManager->getUnitOfWork()->isScheduledForUpdate($pr ..
发布时间:2022-01-16 17:34:16 PHP

Zend 框架 2 + 教义 2

我想开始使用 Zend Framework 进行开发,我想使用 zf2.由于我使用 Doctrine 2,您能否建议一些教程来帮助我将其集成到 zf2 中?谢谢! 解决方案 上次检查:ZF2.2.*, DoctrineORMModule 0.7. 官方模块 你可能想通过 composer 加载 DoctrineORMModule: 将 doctrine/doctrine- ..
发布时间:2022-01-16 17:33:40 PHP

不允许 ResultSetMappingBuilder 工作的原则

我将 Symfony 2 与教义一起使用.我已经建立了一个具有自定义查找功能的自定义存储库.当它加入子查询时,我很确定从我所读到的内容中,我需要使用 ResultSetMappingBuilder 从查询中获取结果.但我不断收到以下错误: 列 'id' 与映射器中的另一列冲突. 我的代码是: $sql ="SELECT c.id as cid, c.country, c.rank, c.c ..
发布时间:2022-01-16 17:31:50 PHP

在 Doctrine2 查询生成器中链接 orX

我必须在添加 where 子句之后,将 OR 表达式动态添加到 getListQueryBuilder 返回的查询构建器中.我找不到任何合适的方法,我刚刚开始学习 Doctrine. 我如何“链接"给定数量的 orX 并将它们添加到我的构建器? 公共函数 getListQueryBuilder($ownerId){$qb = $this->createQueryBuilder('t');返 ..
发布时间:2022-01-16 17:30:20 数据库

教义2关联未初始化

我有一个类如下: /** @Entity **/类组织组{//id和东西.../*** @Column(type="string")**/私人 $name;/*** @Column(type="string", nullable=true)**/私人$描述;/*** @ManyToOne(targetEntity="orgGroupType", inversedBy="_orgGroups")* ..
发布时间:2022-01-16 17:29:39 PHP