[TEMPLATE] Vlozenie stringu do helpru

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

Ahojte

Da sa upravit nejako tento zapis?

{ var $text = 'lore ipsum' }
{ $text|myhelper: 'next string' }

na nieco taketo

{"lore ipsum" | myhelper: 'next string' }
duke
Člen | 650
+
0
-

Lze psát:

{="lore ipsum"|myhelper:'next string'}

Vložíš-li za symbol | mezeru, bude tento symbol interpretován jako PHP bitwise OR operátor a ne jako volání helperu. Za dvojtečkou zdá se mezery již nevadí.

HappyFace
Člen | 162
+
0
-

dik za upozornenie, na tento syntax si budem musiet zvyknut, doteraz som sa s tak striktnm syntaxom nesstretol ..

inak funguje to paraaadne dakujem :) len v tom helpru sa dodavaju nejake HTML tagy, ktore sa po vykresleny templatu zobrazia ako string.

Da sa to osetrit?

OK problem fixed .. stacilo mi len pridat „!“

{!="lore ipsum"|myhelper:'next <br/> string'}

Editoval HappyFace (18. 5. 2012 23:02)

duke
Člen | 650
+
0
-

Šlo by to tuším i bez vykřičníku pokud by tvůj helper vracel místo řetězce objekt Nette\Utils\Html.

HappyFace
Člen | 162
+
0
-

DUKE: skusil som to natlacit do objectu html ale moc mi to neslo, ako nie ze by to bola zla rada, prave naopak zda sa mi to ako ta najspravnejsia cesta, len este nemam dostatok skusenosti s nette, tak to necham zatial ako poznamku na refaktor a ked viacej preniknem do kodu, tak to skusim prepisat :) popripade sa potom budem pitat o rady ..

Neviem ci zakladat nove vlakno ale stale sa sa to tyka helpru takze dopisem to tu …

Ako sa da zistit v helpru(vseobecne vsade v kode), v ako sa momentalne nachadzam prostredi. Lebo potrebujem aby sa mi helper spraval na DEV inak ako na PRODUCTION

v akej constante ci methode to najdem?

castamir
Člen | 629
+
0
-

Z mé zkušenosti – co v kódu nedopíšeš teď, nedopíšeš nikdy ;)

HappyFace
Člen | 162
+
0
-

castamir napsal(a):

Z mé zkušenosti – co v kódu nedopíšeš teď, nedopíšeš nikdy ;)

neviem kde vsade si pracoval ale ked ta tlacia vo firme terminy dokedy mas nieco funkcne odovzdat tak je to uplne bezna vec.
Potom ked mas volnejsie tak sa vramci refaktoringu ktomu vratis,kde danu „prasarnu“ opravis a optymalizujes.. A vdaka tomu, ze si mal/i dany kod moznost pouzivat, vies kod rozsirit o nove moznosti

Extremne programovanie

duke
Člen | 650
+
0
-

HappyFace napsal(a):

DUKE: skusil som to natlacit do objectu html ale moc mi to neslo, ako nie ze by to bola zla rada, prave naopak zda sa mi to ako ta najspravnejsia cesta, len este nemam dostatok skusenosti s nette, tak to necham zatial ako poznamku na refaktor a ked viacej preniknem do kodu, tak to skusim prepisat :) popripade sa potom budem pitat o rady ..

Není to nijak složité, mělo by stačit nahradit jediný řádek ve tvém helperu, tj. ten, kde vracíš výsledek. Pokud bys tam dosud měl:

	return $result;

… tak pomocí objektu Html by to mohlo být:

	return Html::el()->setHtml($result);

Ako sa da zistit v helpru(vseobecne vsade v kode), v ako sa momentalne nachadzam prostredi. Lebo potrebujem aby sa mi helper spraval na DEV inak ako na PRODUCTION

v akej constante ci methode to najdem?

Z presenteru by mělo fungovat:

$productionMode = $this->context->parameters['productionMode']; // TRUE nebo FALSE
HappyFace
Člen | 162
+
0
-

dakujem :)

az tak jednoducho som si to stym HTML nepredstavoval

.. tak v presenteru je to ok ale helper nepatri pod presenter .. nevies pod akou triedov to najdem ? ze by som si to cele sam zavolal v helpru

duke
Člen | 650
+
0
-

Pokud hledáš jednoduché řešení a nejsi zarytý odpůrce „service locatoru“ realizovaném třídou Environment, tak context je odkudkoli dostupný skrz metodu Environment::getContext(). Pokud hledáš „čistší“ přístup, tak si tu závislost injektuj z presenteru tam, kde ji potřebuješ.

HappyFace
Člen | 162
+
0
-

momentalne ako zaciatocnik s nette sa pokusam co najrychlejsie si nastavit vsetko tak ako potrebujem aby som ho mohol rychlo nasadit a pouzivat.. takze ci som toho alebo toho nazoru pustam sa tou najjednoduchejsou a najrychlejsou cestou a cez ten „Environment::getContext()“ mi to pride ako zo ZENDU :D .. ked bude vsetko nastavene a spustene tak si to budem ocistovat a hladat optymalnejsie riesenia

HappyFace
Člen | 162
+
0
-

PLS ako sa da v kode pristupit k datam z configu ? prosim ak by to bolo mozno tak hlavne staticky

Vojtěch Dobeš
Gold Partner | 1316
+
0
-

Environment::getContext()->parameters (v presenteru $this->context->parameters) obsahuje pole ze sekce parameters v konfiguračním souboru.

HappyFace
Člen | 162
+
0
-

:) dik uz to vsetko facha