Article View: pl.comp.lang.php
Article #232452Symfony 4/Doctrine - czy zdarzenia są w ogóle przez kogoś używane?
From: Marek S
Date: Sun, 16 Jun 2019 23:37
Date: Sun, 16 Jun 2019 23:37
48 lines
2525 bytes
2525 bytes
Witam,
Cały weekend poświęciłem zgłębianiu zdarzeń w Symfony 4. Gdy któreś z
nich nie chciało się uruchamiać, drążyłem temat w Google. Niestety
bezskutecznie. Prawie w ogóle temat zdarzeń nie jest poruszany.
Oto przykład: chciałem przechwycić zdarzenie kreowania tabeli przez
migrację (onSchemaCreateTable) w celu naprawy błędów make:migration
(swoją drogą, wygląda na to, że chyba nikt nie testował migracji - błąd
na błędzie, praktycznie brak wsparcia dla 3rd party schemas). Wykonałem
testowego subscribera:
class MigrationEventSubscriber implements EventSubscriber {
public function getSubscribedEvents() {
dump("yyyyyyyyyyyyyyyyyyy");
return array(
Events::onSchemaCreateTable,
Events::postConnect,
);
}
public function postConnect(ConnectionEventArgs $args) {
dump("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
}
public function onSchemaCreateTable(SchemaCreateTableEventArgs $args) {
dump("xxxxxxxxxxxxxxxxxxxxxxxxxxx");
}
}
Dodałem go w services.yaml:
App\EventSubscribers\MigrationEventSubscriber:
tags:
- { name: doctrine.event_subscriber, connection: default }
Przechwytuje on postConnect ale onSchemaCreateTable już nie. Albo ja coś
źle robię, albo migracje to jeden wielki bubel. W migracjach działa
tylko stwórz tabelkę w MySQL lub zmodyfikują ją, a gdy chcesz ciut
więcej lub inną bazę - to spadaj. Czy tak w zamyśle twórców ma działać
Doctrine?
--
Pozdrawiam,
Marek
Technical Details
Message-ID:
<qe6jrd$dar$1@node1.news.atman.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail From: Marek S <precz@spamowi.com> Newsgroups: pl.comp.lang.php Subject: Symfony 4/Doctrine - czy zdarzenia są w ogóle przez kogoś używane? Date: Mon, 17 Jun 2019 01:37:14 +0200 Organization: ATMAN - ATM S.A. Lines: 48 Message-ID: <qe6jrd$dar$1@node1.news.atman.pl> NNTP-Posting-Host: 89-70-94-204.dynamic.chello.pl Mime-Version: 1.0 X-Trace: node1.news.atman.pl 1560728237 13659 89.70.94.204 (16 Jun 2019 23:37:17 GMT) X-Complaints-To: usenet@atman.pl NNTP-Posting-Date: Sun, 16 Jun 2019 23:37:17 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.7.1 X-Mozilla-News-Host: news://news.atman.pl:119 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit