Symfony 订单更新时的Sylius事件侦听器

Symfony 订单更新时的Sylius事件侦听器,symfony,sylius,Symfony,Sylius,我希望在我的包中设置一个事件侦听器,以便在订单设置为已完成或已退款时进行侦听 我使用此链接中的代码成功创建了一个事件侦听器: 这是我的侦听器代码 namespace myBundle\EventListener; use Symfony\Component\EventDispatcher\GenericEvent; class SolrListener { public function onOrderUpdate(GenericEvent $event) {

我希望在我的包中设置一个事件侦听器,以便在订单设置为已完成或已退款时进行侦听

我使用此链接中的代码成功创建了一个事件侦听器:

这是我的侦听器代码

namespace myBundle\EventListener;

use Symfony\Component\EventDispatcher\GenericEvent;

class SolrListener 
{    

    public function onOrderUpdate(GenericEvent $event)
    {
        echo "I have hooked into it !!!";
        exit();
    }
}
这是我的服务条目:

    myBundle.listener.solr:
    class: myBundle\EventListener\SolrListener
    tags:
       -  { name: kernel.event_listener, event: sylius.orders.post_update, method: onOrderUpdate }
我的主要问题是这个事件。我试过sylius.orders.post_update和sylius.order.post_update,但都没有收到


非常感谢您的指导。

我找到了答案。更新订单时,我不应检查:

sylius.order.post_更新

但实际上:

sylius.payment.post_更新

这是我正在更新的付款


希望这对其他人有所帮助

您还可以将侦听器连接到有序状态的状态机。每次进行转换时,都会调用您的侦听器


这实际上可能是个更好的主意。您是否有一些可以发布的示例代码?我很想尝试一下。