Latte makro {img} .................... 25 znaků
- Honza Marek
- Člen | 1664
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.
- Filip Procházka
- Moderator | 4668
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
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 | 8218
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
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