renderDefault s :int se načítá dlouho a bez něj krátce

Terka04
Člen | 44
+
0
-

Dobrý večer,
řeším takovou věc a nemohu si s tím poradit. Raději uvedu příklady.

public function renderDefault()
    {
        dump("Tohle se načítá v řádu ms.");
        die();
    }


public function renderDefault() : int
    {
        dump("Tohle se načítá třeba 4 sekundy.");
        die();
    }

Proč? Má to nějaké oddůvodnění? Jedná se tentýž render ve stejné šabloně. Jen pokud tam je/není :int.

Děkuji za odpovědi. :)

Šaman
Člen | 2634
+
0
-

Netuším, co tomu trvá tak dlouho. Ale také netuším, proč by měla render metoda vracet int?
Skoro si říkám, jestli neprobíhá na pozadí nějaké vyhození, zachycení a obsloužení chyby. Anebo přetypování celé vygenerované šablony na číslo? Nevím jaké máš PHP a jak máš nastavený error reporting. Ale začal bych tím, proč chceš vracet int a jestli ho opravdu vracíš?

Editoval Šaman (8. 3. 2021 19:13)

Terka04
Člen | 44
+
0
-

Šaman napsal(a):

Netuším, co tomu trvá tak dlouho. Ale také netuším, proč by měla render metoda vracet int?
Skoro si říkám, jestli neprobíhá na pozadí nějaké vyhození, zachycení a obsloužení chyby. Anebo přetypování celé vygenerované šablony na číslo? Nevím jaké máš PHP a jak máš nastavený error reporting. Ale začal bych tím, proč chceš vracet int a jestli ho opravdu vracíš?

Děkuji za odpověď. Int rozhodně vracet nepotřebuji, vyhodila jsem to. Předělávám první projekt, který jsem v Nette dělala a tehdy to bylo ctrl+c a ctrl+v z různých zdrojů. Toto mě docela zaskočilo, proč to dělá takový rozdíl. :)

Současná verze PHP na tomto projektu je 7.4 a Nette 3.0.

CZechBoY
Člen | 3608
+
0
-

Nebude to třeba tím, že změníš soubor a invaliduje se nějaká cache – tzn. poté se cache musí znovu nagenerovat? Zkus třeba 10× refreshnout stránku jestli se tak děje v 10 z 10 případů.