问题标签 [doctrine-orm]
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.
entitymanager - 在 Doctrine 2.0 实体中使用 EntityManager
我有 2 个实体:国家(id、名称)和映射(id、对象、internalId、externalId)。Country 和 Mapping 没有关联(因为 Mapping 不仅有国家的行)。我需要使用以下条件获取国家/地区的外部 ID:
country.id = mapping.internalId
mapping.object = 'country'
所以我计划在 Country 添加函数 getExternalId()
问题:
- 在实体内部使用 EntityManager 是一种好习惯吗?如果不是,请解释在我的情况下如何获取外部 ID?
- 也许可以使用 yaml 文件将 Country 和 Mapping 关联起来?
提前致谢!
sql - 如何在 Doctrine 2.0 中编写 UNION
如何在 Doctrine 2.0 中编写这个 SQL 查询(并获取结果)?
php - Doctrine2 多对一关联不会使用 JOIN 查询
我有一个Car
与 entity 具有多对一关系的实体Owner
。如果我选择所有汽车,Doctrine 会在Car
表上进行一次查询,然后在Owner
表上为每辆汽车进行一次查询。Car
因此,获取 N 辆汽车变成了 N+1 个查询,而不是和Owner
表之间的单个 JOIN 查询。
我的实体如下:
如果我想列出汽车及其所有者,我会:
现在这一切都运行良好,除了 Doctrine 为每辆车发出查询。
当然,我希望我的查询日志看起来像这样:
不管我有fetch="EAGER"
没有fetch="LAZY"
关系,即使我在两个实体之间使用 JOIN 进行自定义 DQL 查询,$car->getOwner()
仍然会导致 Doctrine 查询数据库(除非我使用 EAGER,在这种情况下$repo->findAll()
会导致所有这些)。
我在这里是不是太累了,这就是它应该工作的方式 - 或者有没有一种聪明的方法来强制 Doctrine 执行 JOIN 查询?
php - Doctrine2 是否有命名范围的模拟?
Doctrine2 是否具有类似于 ActiveRecord 的命名范围的功能?
sql-order-by - 教义2按关联表排序
我有两个学说实体“用户”和“属性”,如下所示。我需要构建一个查询来检索所有用户并按属性名称对它们进行排序,其中属性类型 = x。例如,获取所有用户并按“标题”对其进行排序。
php - Doctrine2 可以加载计算值吗?
有没有办法使用 Doctrine2 将计算值加载到实体中?例如,如果 aquestion
具有votes
(votes
表具有来自question
表的外键),则使用 SQL 您可以选择question
并计算投票总数。
Doctrine2 有可能实现类似的功能吗?
php - Doctrine2 使用子实体的多对多关联
我通过Hotel
实体与实体具有多对多关系的Airport
实体Distanсe
我不知道如何描述Distance
类的关联?
doctrine-orm - 教义 2 协会
我有 2 个教义 2 实体: - 国家(id,名称) - 映射(id,objectType,internalId,externalId)
我需要使用以下条件在 Country 和 Mapping 之间建立关联: Country.id = Mapping.internalId AND Mapping.objectType = 'country'
我可以使用 YAML/XML 映射来实现这种关系吗?
php - 教义 2 可排序
客户需要根据需要更改项目的顺序,这意味着我需要一些“订单”或“序列”列来保存每个项目的实际位置。
如何使用 Doctrine 2 来实现这一点?
doctrine - 教义2中的多态关联?
我需要一个使用“多态关联”的学说 2 的具体代码示例。让我澄清一下自己。我有一个名为 Contract 的实体,一个合同可以有许多价格规则,这些价格规则可以是不同类型的类并存在于不同的表中。我想这是多态关联的原因还是我错了?
未来可能会有新的价格规则类型,那么如何将这些规则与主要实体关联并保存在单独的表格中?
更新:
这是我的新代码:
合同.php
价格规则.php
折扣规则.php
extradiscountrule.php
示例使用.php
但是当我尝试向合同中添加新规则时,我收到错误消息(致命错误:未捕获异常 'Doctrine\ORM\Mapping\MappingException' 并带有消息 'Class Doctrine\Common\Collections\ArrayCollection is not a valid entity or mapped super class .)
我究竟做错了什么 ?