Latte makro {img} .................... 25 znaků

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

Hodila by se mi taková drobnost.

{img src => '/images/img.png', class => 'trida', jinyantribut => 'cosi'}

Makro by vygenerovalo obrázek i s rozměry (které bych tímto nemusel hledat) a prázdným altem. Samozřejmě by to mělo fungovat i pro dynamicky zadanou adresu (src => $src). Něco jsem si už ubastlil, ale neumim to čistě namontovat do zdrojáků Nette, takže jsem minimálně pro dnešek pull request nezvládl.

paranoiq
Člen | 392
+
0
-

má smysl ty zjištěné rozměry kešovat?

Editoval paranoiq (20. 2. 2012 18:32)

Filip Procházka
Moderator | 4668
+
0
-

O co se přesně snažíš? Jde ti jenom o rozměry?

Asi bych raději využil funkci „attribute macro“.

<img n:src="/images/img.png" alt="" class="trida" />

Díky tomu budeš mít přístupnout HtmlNode. Můžeš si tedy „posbírat“ a mergnout všechny parametry, do pole a pak je vypsat. Inspiroval bych se zde.

Kus toho kódu pak můžeš přesunout do statické metody, která by runtime přijímala parametry (a cestu) a vracela je „opravené“ i s rozměry obrázku. Navíc se zbavíš bordelu v šabloně.

Nox
Člen | 378
+
0
-

paranoiq napsal(a):

má smysl ty zjištěné rozměry kešovat?

No v případě, že by jich bylo na stránce víc, tak určitě, přístup do souboru je relativně nákladná věc … ale (právě proto) imho tak, aby to do cache přistupovalo max. jednou (když je to defaultně taky souborem).

Nejlíp nějaký repozitář src=>rozměry (jinak by to šlo ještě nechat na uživateli ať si třeba cachuje kusy šablon, ale pokud by to nebyla 1 galerie, ale různé obrázky na různých místech, tak by toto taky vůbec nebylo efektivní … anebo by si takové repo stejně napsal (pokud to nejde ještě jinak, než mě momentálně napadá)).

Editoval Nox (20. 2. 2012 20:38)

David Grudl
Nette Core | 8118
+
0
-

Nápad je to zajímavý, ale držel bych se implementace skrze nějaký n:atribut. Má to podstatnou výhodu: šablona je pak lépe zobrazitelná v HTML editorech a lépe pochopitelná pro kodéry.

Oggy
Člen | 306
+
0
-

Honza Marek napsal(a):

Hodila by se mi taková drobnost.

{img src => '/images/img.png', class => 'trida', jinyantribut => 'cosi'}

Makro by vygenerovalo obrázek i s rozměry (které bych tímto nemusel hledat) a prázdným altem. Samozřejmě by to mělo fungovat i pro dynamicky zadanou adresu (src => $src). Něco jsem si už ubastlil, ale neumim to čistě namontovat do zdrojáků Nette, takže jsem minimálně pro dnešek pull request nezvládl.

Kam si obrázky ukládáš? Hledám řešení cachování náhledů obrázku viz. Práce s obrázky jako s cache, ImageStorage