Lorsqu'un événement est déclenché à partir de la fonction de transaction de clôture de Laravel, les opérations de base de données dans les événements font-elles également partie de la transaction ou sont-elles en dehors de celle-ci?Transactions et événements dans Laravel 4
Snippet 1
Event::listen('fireme',function($data){
User::where('votes', '>', 100)->update(array('status' => 2));
});
Snippet 2
DB::transaction(function(){
User::where('votes', '>', 100)->update(array('email' => '[email protected]'));
Event::fire('fireme',array('email' => '[email protected]'));
});
Est-ce que Snippet 1 appartient à la transaction définie sur Snippet 2?
Cela semble très trivial de tester cela, il suffit d'augmenter en exception dans votre écouteur et voir si le reste de la transaction est annulée ou validée. –