3

我在为 Symfony2 实现 L3pp4ard DoctrineExtensions Bundle 中的 preSoftDelete 事件时遇到问题。softDelete 函数工作得很好,但我想在 deletedAt (日期时间)旁边添加一个 deletedBy (用户 ID)。为此,我想听被称为 (preSoftDelete) 的事件,但我无法让它工作。`

(应该)调用事件的文件可以在github找到。我已确认此脚本运行。

我已经在 config.yml 中添加了一项服务:

utwente.idbbundle.presoftdelete:
  class: Utwente\IdbBundle\EventListener\UtwenteIdbSoftDeleteListener
  tags: 
    - { name: gedmo.listener.softdeleteable, event: preSoftDelete, method: onPreSoftDelete }

我已经制作了应该做某事的类/方法。现在它回显你好,并停止脚本执行(用于测试)。

<?php    
namespace Utwente\IdbBundle\EventListener;

class UtwenteIdbSoftDeleteListener {
  public function onPreSoftDelete(LifecycleEventArgs $args){
    echo "Hoi";
    die();
  }
}
?>

但它不起作用。有任何想法吗?

(当我使用时它确实有效name: kernel.event_listener, event: kernel.request,并且LifecycleEventArgs $args省略了)。

4

1 回答 1

5

使用

tags: 
      - { name: doctrine.event_listener, event: preSoftDelete, connection: default }

答案是……

于 2012-12-06T20:00:36.487 回答