Zvláštní chování Nette\Debug
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- nanuqcz
- Člen | 822
Ahoj, přešel jsem před pár dny na Nette 2.0 (ze starší verze 1.0) a narazil jsem na pár věcí, které mi nedávají smysl. I když je docela možné, že se vyskytovaly i ve starším Nette. Týkají se třídy Nette\Debug.
- Myslel jsem, že pokud nechci používat laděnku, logování chyb do souboru atd., stačí nezapínat Debug přes Debug::enable(). Když ale v bootstrapu tento řádek zakomentuju a někde vyhodím warning, skončí stejně moje aplikace chybou
Warning: nejaky_warning on line nejaka_lajna
Fatal error: Uncaught exception 'InvalidStateException' with message 'Logging directory is not specified in Nette\Debug::$logDirectory.
Nette\Debug jsem vypnul, tak proč po mě chce logovací adresář?
- Jak funguje práce s proměnnou
Debug::$logDirectory
? Když do bootstrapu napíšu:
Debug::$logDirectory = APP_DIR . '/log';
Debug::dump(APP_DIR);
Debug::enable();
Debug::neexistujiciMetoda();
vyhodí mi to na serveru chybu:
"/mnt/data/accounts/w/atd.atd./app" (63)
Nette\Debug FATAL ERROR: thrown DirectoryNotFoundException: Directory '/mnt/data/accounts/w/atd.atd./app/../log' is not found or is not directory. while processing FatalErrorException: Call to undefined method Nette\Debug::neexistujiciMetoda()
kde se před tím /log
vzaly ty dvě tečky?
Díky za odpovědi
Editoval xxxObiWan (9. 3. 2011 15:25)
- Mikulas Dite
- Člen | 756
- Nemáš vyplé
$catchExceptions
? - použila se hodnota, co byla v
Debug::enable($mode, $logDirectory, ...);
, je to možné?
- Patrik Votoček
- Člen | 2221
Debug::$logDirectory = APP_DIR . '/log';
musíš nastavit až zaDebug::enable();
jinak ti ji přenastaví.