0

我创建了两个实体。一个主要的和一个扩展的。

class Main {

    $protected $id;

}

class MainExtension extends Main {

    $protected $field_name;

}

我的 Yaml:

Main:
    type: entity
    id:
        id:
            type: integer
            id: true
            generator:
            strategy: AUTO

-

MainExtension:
    type: entity
    fields:
        field_name:
            type: integer

问题是当我更新数据库模式时,它会创建两个表,一个用于 Main,一个用于 MainExtension,我只需要 MainExtension 一个。MainExtension 完美地工作,并且会拾取 Main 中设置的字段/属性,但我只需要它来停止创建“Main”(不只是删除表或其他东西)。

4

2 回答 2

0

您已经创建了两个单独的实体,将它们声明为实体,并且正如预期的那样,您在 db 中有 2 个表。

如果只需要 MainExtension,可以删除 Main 实体的实体声明。或者在教义中使用继承。例如单表继承

于 2013-09-20T06:00:23.227 回答
0

在“主要”实体中,只需更改以下内容:

type: entity

...对此:

type: mappedSuperclass
于 2013-09-21T00:48:53.667 回答