问题标签 [doctrine-inheritance]

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.

0 投票
1 回答
377 浏览

doctrine - 教义继承不将记录插入父表

我有以下数据库结构:

当我插入一个新的 UserRegistered 或 UserOpenid 记录时,我希望它会创建一个 UserRegistered 记录以及一个 Account 记录。

我是否误解了继承/我是否在滥用它,或者我做错了什么?

0 投票
2 回答
1533 浏览

symfony1 - 教义传承。有没有一种简单的方法可以让所有子类/表在 symfony 表单的选择字段中使用它们?

我刚开始使用 symfony 1.4 和 Doctrine。(以前使用过 1.0 - 1.2 + Propel)。

我想尝试一下 Doctrine,因为过去的快速和巨大的开发过程。

感谢 jwage ;-)

我使用表继承。这是我的 schema.yml 的一小部分:

...

...

...

我现在正在考虑使用一种简单的方法来创建正确的表单。

用户应该必须选择表单顶部的字段(如您可以在此处看到的:http: //msm-esv.dyndns.org/frontend_dev.php/fahrzeuge/insert

您应该选择“父类”,例如 Rennfahrzeuge 或 Karts 等。

之后,用户应该选择像 Tourenwagen 或 Sonstige 这样的子类。

然后页面应该重新加载并显示正确的表单。

Doctrine 中是否有任何函数可以获取继承/子类以在第二个选择字段中显示它们?

(例如 Rennfahrzeuge 有 Tourenwagen,..,..., Sonstige 和 Karts 有 TonyKart,...,...,Sonstige)

之后,我可以动态创建分配的表单类,例如:

或者我考虑过在父表单类中设置正确的模型。

你怎么认为?我真的很感激任何建议和帮助:-)

非常感谢,

马可

0 投票
2 回答
981 浏览

php - Symfony 中的固件和继承

我在 Symfony 中有一个这样的数据库模式:

如您所见,“alumno”从“persona”继承而来。现在我正在尝试为这两个表创建固定装置,但我无法让 Doctrine 加载它们。它给了我这个错误:

SQLSTATE [23000]:完整性约束违规:1452 无法添加或更新子行:外键约束失败(eat/alumno__beca,CONSTRAINT alumno__beca_persona_id_alumno_id FOREIGN KEY(persona_id)REFERENCES alumnoid)ON DELETE CASCADE)

有人知道如何为从另一个继承的表编写夹具吗?

谢谢!

0 投票
2 回答
2450 浏览

php - Symfony 框架 - 检查数据库条目是否存在

使用 symfony 框架,哪个代码最好查询数据库表以检查条目是否已经存在?

我需要这样的查询:

0 投票
1 回答
104 浏览

inheritance - 如何使用 Symfony2 将继承子实体设置为 UserInterface

我有一个继承的数据库模型,使用 symfony2 的“类表继承”模型。

Employee 是一个抽象类,顶级继承模型。

秘书是扩展员工的孩子。技术员也是扩展员工的孩子。

我正在构建一个应用程序,秘书可以在其中为技术人员管理一些事情,所以他们有一个带有一些表格等的管理面板。

SecretRepository 也是一个 UserProvider 接口,允许秘书通过应用程序进行身份验证。

我遇到的问题是身份验证查询不关心鉴别器......

身份验证 SQL 查询的调试

我只是不明白如何管理秘书和员工之间的关系?我应该手动包含从秘书到员工的外键吗?还是我应该手动处理身份验证查询中的鉴别器?

让我们看看我的模型的基础知识:

类Employee

儿童班秘书

UserProviderInterface类SecretaryRepository

问题很简单,INNER JOIN 子句不正确,因为它不使用从秘书到员工的外键,而是使用直接 ID,也可以是技术人员 ID!

这是我的表的一些行的导出: