Komentáře k článku
Symfony Console jako první rande se Symfony

V článku si ukážeme možnosti Symfony Console. Je to samostatná komponenta s minimem závislostí, takže ji lze velmi snadno začít používat v existující aplikaci. Považuji to za super způsob, jak se nenásilně seznámit s ekosystémem Symfony.
Výborný úvod
Symfony Console doporučuju použít, i když vám třeba zbytek aplikace jede na Nette, ve kterém podpora CLI není řešené příliš dobře.
Ve Slevomatu máme takhle přes 200 commandů, které slouží k různým účelům – jsou pouštěny cronem, Supervisorem, při deployi i ručně.
Do Symfony 2.8/3.0 přibyly konzolové styly, které sjednocují vzhled a zjednodušují práci s různými vypisovacími helpery: https://symfony.com/blog/new-in-symfony-2-8-console-style-guide
Díky za odkaz
Jak to máte s Nette integrované? Přes Kdyby\Console nebo jinak?
Díky za odkaz, akorát jsem na to taky narazil a chtěl jsem ho přidat :-)
Re: Díky za odkaz
Nemáme žádnou speciální integraci, po Nette chceme jen aby nám jeho DI kontejner vytvořil Console Application a přidal nám do ní dostupné commandy :)
ContainerAwareCommand..
Nutno podotknout, že v Symfony již ContainerAwareCommand existuje a není tak potřeba vytvářet vlastní abstraktní třídu…
Dále bych uvedl, že commandy jsou perfektní pro jakékoli cron operace, feedy, prvotní importy nebo náročné asynchronní operace. Právě možnost asynchronního spouštění je perfektní pro daemonizované aplikace, které mohou například synchronizovat eshop vs. ERP systém apod… Ještě je dobré prozkoumat verbositu (ukecanost) commandu, kdy Outputu je možno nastavit verbosity level a na základě toho vypisovat údaje…
Seriál je fajn, je vidět, že cílíte především na Nette vývojáře :-)
Díky za něj a držím palce…
Re: ContainerAwareCommand..
Ten
ContainerAwareCommand
v Symfony je určený pro použití se Symfony containerem. Příklad v článku měl ukázat, jak to vyřešit pro svou aplikaci v jiném frameworku.