Symfony2& Doctrine2:创建自定义注释

时间:2011-11-28 15:10:18

标签: symfony doctrine-orm

我想为Entity类创建一些自定义注释,我遇到this article on Doctrine2但是我不确定如何将它集成到我的Symfony包中,任何人都可以了解一下此?

class User implements UserInterface
{
    /**
     * @var integer $id
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     *
     * @myCustomVar(remember="true")
     */
    protected $id;

由于

1 个答案:

答案 0 :(得分:6)

激励你进入学说扩展:

  • DoctrineExtensions库包含一些注释类。但是,由于这个注释对于Doctrine核心并不意味着任何东西,所以这个扩展也负责解释它们。为此,它使用一些必须注册到Doctrine事件调度程序中的侦听器。

  • 在Symfony中,您可以使用doctrine.event_listener(或doctrine.event_subscriber为事件订阅者)声明服务,以便Doctrine包找到它们并为您注册它们。 StofDoctrineExtensionsBundle主要旨在自动化这部分事件监听器注册。

无论如何,当你考虑扩展Doctrine时,因为它可以在没有Symfony的情况下使用,所以更喜欢将你的工作分为两部分:一部分是学说扩展,另一部分是这个扩展和Symfony之间的粘合,叫做bundle。