Doctrine orm 流动中的学说继承
我正试图为我的Typo3 Flow项目建立一个基类。它应该包含“创建日期”和“更新日期”。 因为条令允许您使用继承映射,所以我想让我的基类成为“MappedSuperclass” BaseClass.php:Doctrine orm 流动中的学说继承,doctrine-orm,flow-framework,Doctrine Orm,Flow Framework,我正试图为我的Typo3 Flow项目建立一个基类。它应该包含“创建日期”和“更新日期”。 因为条令允许您使用继承映射,所以我想让我的基类成为“MappedSuperclass” BaseClass.php: /** * @Flow\Entity * @ORM\MappedSuperclass */ class BaseClass { /** * @var \DateTime * @ORM\Column(type="datetime") */
/**
* @Flow\Entity
* @ORM\MappedSuperclass
*/
class BaseClass {
/**
* @var \DateTime
* @ORM\Column(type="datetime")
*/
protected $created;
/**
* @var \DateTime
* @ORM\Column(type="datetime")
*/
protected $updated;
...
Component.php:
/**
* @Flow\Entity
* @ORM\InheritanceType("SINGLE_TABLE")
*/
class Component extends BaseClass{
如果我尝试使用“flow doctrine:update”命令,将弹出以下错误消息:
未捕获异常
实体“…\Domain\Model\BaseClass”没有方法
“Flow_Aop_Proxy_FixMethods and Advice SarrayforOctrineProxies”将
注册为生命周期回调
那么,在TYPO3流中使用模型继承是可能的吗?我找到了一种方法 只需将基类抽象并添加所有附加注释,如下所示:
/**
* @Flow\Entity
* @ORM\MappedSuperclass
*/
abstract class BaseClass {
并像这样扩展您的模型:
/**
* @Flow\Entity
* @ORM\InheritanceType("SINGLE_TABLE")
*/
class SomeModel extends BaseClass{
SomeModel的表现在将具有来自基类的属性。但是基类本身并不表示在数据库模式中
也许你也能利用特征来解决更复杂的问题