我正在尝试找出一种对与实体关联的所有实体进行级联操作的方法。例如,如果我有一个用户,一个用户有实体,而这些实体有实体,我想对每个实体执行一个操作。具体来说,我想对该树中的每个实体执行验证。
我将如何实现'getAssociatedEntities()'之类的东西:
class User {
/**
* @ManyToOne(targetEntity="Comment")
*/
private $comment;
/**
* @ManyToOne(targetEntity="Something")
*/
private $something;
}
$user->setComment($comment);
$user->setSomething($something);
$associated_entities = $user->getAssociatedEntities(); // NOT A REAL METHOD
foreach ($associated_entities AS $entity) {
validate($entity);
}
我意识到我可以使用生命周期回调来执行验证。但是,设置验证注释让事情变得非常容易。我可以验证我坚持的每个实体,但我无法验证其关联实体。