我想在我的实体上有自定义注释,它们会对persist
事件做一些事情,但通过注释定义。一个例子:
/**
* @ORM\Entity
* @Searchable("column"="title")
*/
class Product
{
}
该@Searchable
注释应该以某种方式触发我的代码,该代码将读取 column title
,分隔单词并保存到自己的表中(我真正需要的非常简化的示例)。
我知道我可以使用学说监听器并将它们注册在 config.yml 但我真的需要通过实体注释来完成,以便searchable
可以通过不同的项目轻松重用捆绑包。我阅读了大量文档,甚至试图理解 Gedmo 行为捆绑代码,但我失败了。能以一种防白痴的方式告诉我如何做到这一点吗?
我什至阅读了http://php-and-symfony.matthiasnoback.nl/2011/12/symfony2-doctrine-common-creating-powerful-annotations/但这有点太复杂了。