Doctrine2额外的列或扩展表

时间:2012-12-16 16:35:24

标签: php orm doctrine-orm doctrine-extensions

我想制作Doctrine 2扩展,这将为实体添加额外的字段。我还需要新桌子。字段和表将基于我添加到该实体的自定义注释。我认为必须在loadClassMetadata事件中以某种方式添加它。

你能提供一些如何实现这个目标的信息吗?

1 个答案:

答案 0 :(得分:2)

我找到了。

事件订阅者还可以订阅ORM工具事件,例如postGenerateSchemaTable事件。

public function getSubscribedEvents()
{
    return array(
        Doctrine\ORM\Tools\ToolEvents::postGenerateSchemaTable,
        Doctrine\ORM\Tools\ToolEvents::postGenerateSchema,
    );
}

如果您可以获取架构对象,并在那里插入修改

$schema = $eventArgs->getSchema();
$schema->createTable( ... )