如何将用户定义的方法添加到Doctrine实体

时间:2013-11-18 23:35:56

标签: php symfony orm doctrine-orm doctrine

向Doctrine ORM实体添加用户定义方法的官方模式是什么?基本上是添加特定于对象的方法,比如设置默认值,进行私有对象处理。

我尝试扩展我的实体但是每当我与Doctrine交互时,我都会得到Entity对象,而不是扩展它的子对象。有超类,单类和其他模式试图解决其他问题,而不仅仅是向持久对象添加方法。

我不希望实体扩展另一个实体。我只是希望能够向持久化实体对象添加方法。

理想情况下,我会扩展A_Entity,其中A_Entity是来自XML映射的自动生成实体,A是我在应用程序中使用的对象。但是,在Doctrine中,这似乎是不可能的。

1 个答案:

答案 0 :(得分:1)

我认为你可以在实体类本身中添加方法。如果您公开这些方法,您甚至可以直接在twig模板中使用它们。如果之后使用console命令(generate:doctrine:entities)重新生成getter和setter,则不会覆盖自定义方法。