Příliš dlouhé názvy souborů v tempu

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
MartyIX
Člen | 217
+
0
-

Narazil jsem na problem na Windowsu (NTFS), kdy nazev jednoho souboru v temp\cache\c-Nette.FileTemplate je uz tak dlouhy, ze filesystem ho nedokaze vytvorit.

Neresil jste to uz nekdo?

Editoval MartyIX (28. 1. 2011 10:22)

newPOPE
Člen | 648
+
0
-

Netusim mam taky isty nazov ale problem som s tym nikdy nemal.

mam WIN 7 (64bit), ale ani na 32bitoch to nejaky problem nerobi pokial viem…

Nemoze tam byt problem s pravami?

MartyIX
Člen | 217
+
0
-

Problem s pravy to neni, protoze mi to bezi doma na localhostu.

mm-marek
Člen | 61
+
0
-

ntfs pobere 255 znaků v názvu ne? protože ten hash je vždycky stejně dlouhej, asi bych se zamyslel nad zkrácením délky názvu metod/tříd

Honza Kuchař
Člen | 1662
+
0
-

255 znaků ano – ale v názvu souboru nikoli celé cesty.

MartyIX
Člen | 217
+
0
-

Pravdepodobne ten problem nebude v delce nazvu souboru, zkousel jsem pochopitelne nazev zkratit a nepomohlo to. Kazdopadne puvodni otazka je podle me namiste, prelezt 255 znaku neni az tak tezke, jestlize mam ve zdrojaku takovyto kod:

$template = parent::createTemplate();
$template->setFile(dirname(__FILE__).'/template.phtml');
return $template;

Editoval MartyIX (30. 1. 2011 15:05)

David Grudl
Nette Core | 8218
+
0
-

Tuším, že limit pro cestu je 260 znaků (http://msdn.microsoft.com/…a365247.aspx). Názvy kešovaných šablon se pohybují kolem 60 znaků, běžná cesta D:\hosting\aplikace.cz\temp\cache\_Nette.FileTemplate\ bude mít taky kolem 60 znaků, takže rezerva by stále měla být dostatečná.

MartyIX
Člen | 217
+
0
-

Toto je jmeno jednoho souboru, ktery mam v tempu:

_D%3A.Work.PHP.Projects.domain.subdomain.nette.app.components.HideableComponent.hideableComponent.phtml-3b7b8cbff2920e8c70a4b391fa9d8f2f.php

a ktery vznikl, protoze mam v komponente kod:

protected function createTemplate()
{
    $template = parent::createTemplate();
    $template->setFile(dirname(__FILE__).'/hideableComponent.phtml');
    return $template;
}

Evidentne jmeno souboru je hrozne dlouhe. David tedy mluvi jen o presenterech a ne o komponentach?

Editoval MartyIX (3. 2. 2011 22:05)

David Grudl
Nette Core | 8218
+
0
-

Máš nějakou aktuálnější verzi? Ověř, proč se název na tomto řádku nezkrátí.

MartyIX
Člen | 217
+
0
-

Byla to starsi dev verze, omlouvam se.

Editoval MartyIX (19. 2. 2011 11:31)