Divné chování $configurator->setTempDirectory() (wtf)
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- bojovyletoun
- Člen | 667
Ahoj, tohle je trochu okrajové, ale mám pocit, že v případě, že nechci vytvářet dočasný adresář, tak je chování uvedené metody divné.
\Nette\Diagnostics\Debugger::enable(false, false);
$a = new Nette\Config\Configurator;
$a->setTempDirectory(''); //(*) -
$cont = $a->createContainer();
exit;
- Když uvedený řádek nezavolám, vyskočí na mě chyba
"Nette\DI\ServiceCreationException Service 'cacheStorage': Missing item 'tempDir'"
- Jediná možnost je zavolat s prázdným řetězcem
- Pro doplnění: zavolat metodu s false nebo Null taky nejde (chyba:
Unable to concatenate non-scalar parameter 'tempDir' into '%tempDir%/cache
)
Samozřejmě moje představa je, že bez zavolání se doč. adresář nebude
vytvářet, se zavoláním emptystringu (''
) se bude chovat jako se
zavoláním tečky ('.'
)(což funguje i teď),akorát nemám ideu,
jak to upravit.
Pozn.: exit; jsem tam přidal, aby bylo vidět, že službu nespouštím, chyby vybublá z generateClass
Editoval bojovyletoun (19. 6. 2012 21:33)
- Honza Marek
- Člen | 1664
Neni to spíš divné použití než divné chování? Nette prostě temp adresář potřebuje.