Doctrine ORM是一个PHP ORM。虽然Doctrine 1.2使用Active Record模式,但Doctrine ORM 2及更高版本使用Data Mapper模式。 Doctrine项目是一个开源库和工具的集合,用于处理用PHP编写的数据库抽象和对象关系映射。
Doctrine2 ORM - 托管+脏实体 X 无法安排插入
我有以下课程(仅显示部分内容以减少阅读量) 类页面{ /** * @ORM\Column(type="string", unique=true, nullable=false) * @ORM\Id * @ORM\生成...
用于映射 MySql“位”数据类型的 Doctrine2 解决方法
我的数据库模式中有几列具有位数据类型,并且在 Doctrine2 映射它时遇到问题。我不断得到: 请求未知数据库类型位,Doctrine\DBAL\Platforms\
使用 PersistCollection 添加或删除新旧类别的优雅方式
我所做的事情非常丑陋。它有效,但是在 symfony 中是否有任何“优雅”的方式来做到这一点?我自己在文档中找不到有用的东西。我所做的是: /** * ...
我尝试将symfony服务容器注入到dcotrine动态连接wrapper_class中 使用 Doctrine\DBAL\Connection; 类 DynamicConnection 扩展 Connection { 公共 $container;...
为什么我手动更新的内容在 Symfony/Doctrine 中没有显示为最新?
在我的 Symfony Web 应用程序(版本 7)中,我正在获取数据库中托管的信息。 我已经直接在数据库中更新了一篇文章,在控制台中运行此查询: 更新`posts_xyz` 设置`
我可以在 Sonata Admin 控制器中使用 prePersist/preUpdate 来保存多个对象吗?
我有这个别名实体: 使用 Gedmo\Timestampable\Traits\TimestampableEntity; 类别名 { 使用标识符自动生成特征; 使用时间戳实体; 使用 ActiveTrait; /** *...
我有两个实体:类别和图标,它们具有多对多关系,所以我最终得到三个表:类别图标和 icon_category 我的目标是找到多个类别的图标...
我的问题和之前问的一模一样,但最后一个问题已经有6年历史了,并且存在新的Doctrine版本,所以我现在参考最新版本的Doctrine来问这个问题。 我...
我有一个由许多特征组成的类城市。 /** * @ORM\实体 * @ORM\Table(名称=“城市”) * @SoftDeleteable(fieldName="deletedAt") */ 类城市 { 使用可识别实体; 使用
Symfony2 Doctrine 查询构建器作为 FROM 子句中的子查询
我使用查询生成器获得了一个查询,并将其分配给 $qb 变量。它在 PHP 和数据库中都可以正常工作。现在,我尝试将该查询用作子查询,如下所示: $subQuery = $...
我如何使用doctrine2通过带有ids的数组进行排序? 我有这样的疑问: $qb = $this->createQueryBuilder('u') ->选择('u', 'n', 'c') ->leftJoin('u.notifications', 'n') ...
如何动态添加选项到 Symfony 表单 EntityType 元素
我是一名 Symfony 新手,正在开发一个应用程序(使用 Doctrine)来管理心理学实践的日程安排和计费。 实体 Invoice 与实体Session 具有一对多关系。所以我的表格
我有:两个具有无向 M:M 关联的实体。 类共享信息 { // ... /** * @ORM\ManyToMany(targetEntity="Item") * @ORM\JoinTable(name="share_info_items", *
我有以下的doctrine2查询运行良好,它检索某个地理半径内的所有“标记”。 $qb->select('标记') ->from('SndSpecialistLocator\Entity\Marke...
我刚刚完成了我的 Symfony 7 项目,在我的 PC 上我使用 XAMPP 运行所有项目,一切正常。 现在我将它部署在我的网络服务器上,创建数据库并尝试在 shell 中运行学说迁移...
如何避免与 Doctrine2 和 Zend Framework2 的 ManyToMany 关系重复?
目标是拥有 2 个实体文章和标签,具有多对多关系,其中标签表中的标签保持唯一,即使为其他文章声明相同的标签也是如此。 我尝试更好地解释...
Symfony2 原则错误:无法对使用 HAVING 子句的查询进行计数。使用输出步行器进行分页
我正在尝试获取非空的集合,即至少有 1 个对象。集合实体与对象实体具有一对多关系。我正在使用 KNP 分页器对结果进行分页。这是...
有一个symfony项目,从5.1更新到6.4 LTS,并将原则更新到3.0.0。 将此实体从注释更新为 PHP8 属性: ` 有一个 symfony 项目,从 5.1 更新到 6.4 LTS,并将原则更新到 3.0.0。 将此实体从注释更新为 PHP8 属性: ` namespace App\Entity; use Doctrine\ORM\Mapping as ORM; #[ORM\Entity(repositoryClass: "App\Repository\SottocontiUtentiRepository")] class SottocontiUtenti { #[ORM\Id] #[Column(type: "integer")] private int $utente_id; #[ORM\Id] #[Column(type: "integer")] private int $pratica_id; #[ORM\Id] #[Column(type: "integer")] private int $finanziamento_id; #[Column(type: "string")] private $nome; #[Column(type: "string")] private $cognome; // Ripristino della relazione #[ORM\ORM\Id()] #[ManyToOne(targetEntity: Sottoconti::class, inversedBy: "utenti")] #[JoinColumn(name: "sottoconto_id", referencedColumnName: "sottoconto_id", nullable: true)] private ?Sottoconti $sottoconto_id; // Nota l'utilizzo del tipo per Sottoconti #[Column(type: "float", nullable: true)] private $importo_deliberato; #[Column(type: "string", nullable: true)] private $rientro; public function getUtenteId(): ?int { return $this->utente_id; } public function setUtenteId(int $utente_id): self { $this->utente_id = $utente_id; return $this; } public function getSottocontoId(): ?Sottoconti { return $this->sottoconto_id; } public function setSottocontoId(?Sottoconti $sottoconto_id): self { $this->sottoconto_id = $sottoconto_id; return $this; } public function getPraticaId(): ?int { return $this->pratica_id; } public function setPraticaId(int $pratica_id): self { $this->pratica_id = $pratica_id; return $this; } public function getFinanziamentoId(): ?int { return $this->finanziamento_id; } public function setFinanziamentoId(int $finanziamento_id): self { $this->finanziamento_id = $finanziamento_id; return $this; } public function getImportoDeliberato(): ?float { return $this->importo_deliberato; } public function setImportoDeliberato(?float $importo_deliberato): self { $this->importo_deliberato = $importo_deliberato; return $this; } /** * @return mixed */ public function getRientro() { return $this->rientro; } /** * @param mixed $rientro */ public function setRientro($rientro): void { $this->rientro = $rientro; } } ` 出现此错误: 没有为实体“App\Entity\SottocontiUtenti”指定标识符/主键。每个实体都必须有一个标识符/主键。 尝试用 Google 搜索并询问 Gemini ADV 或 ChatGPT。 什么都不起作用。 也尝试过这种方式: https://www.doctrine-project.org/projects/doctrine-orm/en/3.0/tutorials/composite-primary-keys.html#composite-and-foreign-keys-as-primary-key 但仍然遇到同样的错误。 有什么建议吗? 非常感谢, 贾科莫。 看起来您缺少 importo_deliberato 表的实际主 id 字段,而且您应该只在主 id 字段而不是其他外部 id 中使用 #[ORM\Id]...这是取自 symfony 演示的示例应用程序: ... #[ORM\Id] #[ORM\GeneratedValue(strategy: 'IDENTITY')] #[ORM\Column(type: 'integer')] private $id; #[ORM\ManyToOne(targetEntity: User::class)] #[ORM\JoinColumn(nullable: false)] private ?User $author = null; ...
我有一个将大文件作为 blob 存储到数据库的实体。 我现在想让 Symfony 永远不会加载这些 blob,除非我通过适当的 getter 专门请求它们。 在埃森...
我尝试使用 symfony Web 应用程序进行充电测试。我有一个包含 13 个字段的实体,其中包括 1 个主键和 7 个外键。我已经注入了40K数据。 我的控制器使用 findAll() 和 KNP Paginator 机智...