2014-10-17 52 views

回答

1

Entity类是不把业务逻辑的地方。据我所知,您不能将entity定义为服务。

您想要做的事情应该通过创建Event listener来解决,您可以将其定义为服务并从parameters.yml传递值。这位听众应该听你的postRemove事件。

services.yml

services: 
    service_name: 
     class: Acme\Your\ListenerClass 
     arguments: [%your_parameter_from_yml%] 
     tags: 
      - { name: doctrine.event_listener, event: postRemove } 

你ListenerClass:

class ListenerClass 
{ 

public function __construct($your_param_from_parameters) 
{ 
    $this->param = $your_param_from_parameters 
} 

/** 
* @param LifecycleEventArgs $args 
*/ 
public function postRemove(LifecycleEventArgs $args) 
{ 
    $entity = $args->getEntity(); 

    if ($entity instanceof YourEntity) { 
     //DO THE MAGIC!! 
    } 
} 
}