NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Lekce 4 - Dokončení kalkulačky v Symfony

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
MArtin
Člen
Avatar
MArtin:23.5.2017 11:14

Debug tip: komu to hadze chybovu hlasku ohladne chybajuceho DefaultControllera, tak je potrebne zmazat cache - bud rucne - obsah adresara ./var/cache/ alebo slusne pouzitim konzoloveho prikazu bin/console cache:clear (prip. php bin/console cache:clear)

Editováno 23.5.2017 11:14
 
Odpovědět
23.5.2017 11:14
Avatar
MArtin
Člen
Avatar
MArtin:23.5.2017 12:29

Debug tip 2: pre tych co si kod prepisovali rucne podla clanku treba pridat do suboru CalculatorMana­ger.php na zaciatok:

use AppBundle\Entity\Operation;

...za namespace ...

 
Odpovědět
23.5.2017 12:29
Avatar
MArtin
Člen
Avatar
MArtin:23.5.2017 12:58

Debug tip 3: zmenit v subore .htaccess v adresari web:

- RewriteRule ^ %{ENV:BASE}/app.php [L]
+ RewriteRule ^ %{ENV:BASE}/app_dev.php [L]

...
- RedirectMatch 302 ^/$ /app.php/
+ RedirectMatch 302 ^/$ /app_dev.php/
Editováno 23.5.2017 12:59
 
Odpovědět
23.5.2017 12:58
Avatar
solta
Člen
Avatar
solta:25.5.2017 1:58

nechápu význam služeb, může mi někdo vysvětlit jaký je rozdíl mezi

$calculatorManager = $this->get('calculator_manager');

a

$calculatorManager = new CalculatorManager();
 
Odpovědět
25.5.2017 1:58
Avatar
Jindřich Máca
Tvůrce
Avatar
Odpovídá na solta
Jindřich Máca:25.5.2017 13:47

Ten hlavní rozdíl je asi v tom, že pomocí toho get() vždy získáš pomocí DI jednu a tu samou instanci, když to pomocí new si pokaždé vytváříš novou.

Další rozdíl je, že pokud by měl konstruktor té získávané třídy další parametry, tak s použitím toho get() je neřešíš a rovnou dostáváš instanci se vším všudy, když to při použití new musíš mít k dispozici všechny potřebné parametry pro vytvoření té instance a to může být často docela složité.

Takže závěrem nejde ani tak o použití na tom jednom místě, ale o způsob získávání napříč celou aplikací. ;)

 
Odpovědět
25.5.2017 13:47
Avatar
solta
Člen
Avatar
Odpovídá na Jindřich Máca
solta:25.5.2017 14:10

Díky za osvětlení. Bylo by fajn podobne veci rovnou vysvětlit v članku jistě nebudu sám kdo to potreboval vysvětlit:)

 
Odpovědět
25.5.2017 14:10
Avatar
Jindřich Máca
Tvůrce
Avatar
Odpovídá na solta
Jindřich Máca:25.5.2017 15:53

V článku je to zmíněné jako princip DI (Dependenci Injection), což je obecný návrhový vzor, s jehož znalostí se tak trošku počítá. :-) To znamená, že pokud někdo zná DI, je mu jasné i to, co jsem napsal ve svém předchozím komentáři. ;-)

 
Odpovědět
25.5.2017 15:53
Avatar
saavikam
Člen
Avatar
saavikam:7.6.2017 9:57

Ahoj,
můžu se prosím zeptat na kod v src/AppBundle/En­tity/Operation­.php, např:

/**
* @var int První číslo operace.
* @Assert\NotBlan­k(message = "Tohle pole je povinné.")
* @Assert\Type(
* type="int",
* message="Hodnota {{ value }} není validní číslo."
* )
*/
protected $x = 0;

je to komentáři. Znamená to, že Symfony si tyto informace přečte z komentáře?

Děkuji
Andrea

 
Odpovědět
7.6.2017 9:57
Avatar
Jindřich Máca
Tvůrce
Avatar
Odpovídá na saavikam
Jindřich Máca:7.6.2017 13:29

Ano, Symfony standardně dělá reflexi nad komentáři a využívá tzv. funkční anotace pro všemožné účely. :-)

 
Odpovědět
7.6.2017 13:29
Avatar
Daniel Gramblička:2.8.2018 14:50

Ahoj, pre tych ktori maju problem s typeErrorom - do Calculator.php treba pridat :

use App\Entity\Operation;
 
Odpovědět
2.8.2018 14:50
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 23.