Jump to content
php.lv forumi

Smarty template engine


Guest Medniex

Recommended Posts

Guest Medniex

Šodien sāk apgūt Smarty. Iepatikās ideja par koda atdalīšanu no HTML. Sāku ar ziņu(stories) moduli, bet neesmu pārliecināts, vai daru pareizi.

 

PHP kods: http://paste.php.lv/4015

un HTML templates kods: http://paste.php.lv/4016

 

Tātad...

Ja man vajadzētu izvadīt tikai vienu konkrētu rakstu, tad es izveidotu templeitu, padotu datus un viss būtu OK. Bet ziņu modulis darbojas komplicētāk - ja ir uzdots raksta ID, tad ir jāizvada atbilstošais raksts, ja ID nav, tad izvadam, teiksim, pēdējos 10 rakstus. Būtu stulbi taisīt katram actionam vienu templeitu. Tāpēc es izštukoju tādu veidu, kā to paveikt.

 

Šis kods ir tikai kā piemērs, var jau gadīties tā, ka modulis pilda nevis 2 funkcijas, bet gan vairāk.

 

Apskatiet, lūdzu, un pasakiet, vai es daru pareizi. Gaidīšu ieteikumus, sakarā ar Smarty pielietošanu!

Link to comment
Share on other sites

Smarty gan ir pornografija. Iedomājies, ka petiesībā tas ir viens no pirmajiem php interpretatoriem uzrakstīts iekš php! Tik ar idiotisku sintaksi. Tak stulbums, vai ne?

Nevajag atdalīt pilnībā kodu no html. Ar smarty tu tāpat raksti kaut kādu kodu, tik izcili tizlu. Vajag atdalīt datu modeli, kontrolleri un viewu - tobiš MVC modelis. Un necensties template izmantot ko vairāk par prastiem if, foreach (to pašu komplektu, ko smarty realizē).

Varbūt offtopiks, tak tomēr...

Link to comment
Share on other sites

vispār jau section vieta foreach prasītos.

bet labāk pāraksti to uz index.php - http://paste.php.lv/4017 un template.php - http://paste.php.lv/4018

ar smarty ātrāk vai vēlāk, bet nožēlosi ka ķēpājies ar viņu.

a ko pats izmanto??

ja piemeeram ir jaataisa muuzhiigaa lapa, ko veelaak tikai papildinaasi. un veelaak dizainu uz aatro nomainiit vajadzees.

Link to comment
Share on other sites

ja piemeeram ir jaataisa muuzhiigaa lapa, ko veelaak tikai papildinaasi. un veelaak dizainu uz aatro nomainiit vajadzees.

 

Hmm nez cik jau gadus ar web-related lietām ņemos .. drīz kādi 10 varētu būt .. BET jāatzīstas ka nekad neesmu saskāries ar projektiem kur būtu jāmaina dizains, bet kods paliktu vecais. Parasti viss tiek nonests līdz 0 un sāk jaunu dzīvi..

 

"Muuzhiigaas" lapas neeksistē .. zināmā laikā (nedēļa, mēnesis, gads .. divi) kods, platforma, vide noveco un paliek neaktuāls tāpat kā viss pārējais..

Link to comment
Share on other sites

Hmm nez cik jau gadus ar web-related lietām ņemos .. drīz kādi 10 varētu būt .. BET jāatzīstas ka nekad neesmu saskāries ar projektiem kur būtu jāmaina dizains, bet kods paliktu vecais. Parasti viss tiek nonests līdz 0 un sāk jaunu dzīvi..

 

"Muuzhiigaas" lapas neeksistē .. zināmā laikā (nedēļa, mēnesis, gads .. divi) kods, platforma, vide noveco un paliek neaktuāls tāpat kā viss pārējais..

par dizainu: no saakuma saak progot lapu, bet tikai peec tam tiek sagatavots dizains.

par lapaam: tvnet.lv, apollo, delfi tev piemeers. kas tur noveco??? ja runa iet par siikaam lapaam, vai par krutiem draugiem.lv, vai ko liidziigu, tad jau atdaliit PHP no HTML nu tik tieshaam muljkiigi.

katra lieta savam meerkjim

Link to comment
Share on other sites

par lapaam: tvnet.lv, apollo, delfi tev piemeers. kas tur noveco???
Neņemot vērā delfi (kas par sevi ir unikums) kā tev šķiet cik reizes apollo un tvnets jau ir mainījušies?

 

Aiz kam es neminēju lapas saturu vai profilu, bet gan uzbūvi un izmantotos "materiālus" / resursus..

 

par dizainu: no saakuma saak progot lapu, bet tikai peec tam tiek sagatavots dizains.

Parasti gan ir otrādi.. Jo dizains (gan vizuālais gan strukturālais) nosaka kas un kā tad īsti būs jākodē un kādus paņēmienus būs nepieciešams izmantot..

Link to comment
Share on other sites

Kāds gan tam tam visam sakars ar šo topicu?

Proti raksts ir par estētikas vai ekonomisko nozīmi redizaina veikšanai un principā ne vārda par rejūzējamu kodu..

 

It doesnt work.. bet protams tas neliedz tev izmēģināt Smarty..

No savas pieredzes varu vienīgi pateikt ka to ka mēs aplauzāmies un noteikti nākošajā projekta etapā ši engine tiks aizvākta..

 

p.s. tik krasi editēt savus postus nav labi .. ( norāde uz tevus minēto rakstu: http://www.alistapart.com/articles/redesignrealign )

Link to comment
Share on other sites

a kas vainas smarty? nelielam cms, nelielaam lapaam ir ok

lai gan es arii to palietoju kaadu laiku un atteicos. lielaakoties taapeec, ka citi, ieraugot smartiju, uzreiz bljaava - kas tas? es neko nesaprotu! nah taads vajadziigs? ..

Link to comment
Share on other sites

Templātes atvieglo dzīvi viennozīmīgi, taču Smarty ir riebīgs monstrs. Tur ir par daudz viskā lieka.

Es jau kurā projektā izmantoju ļoti vienkāršu templates klasi, kuras garums ir 300 rindiņas un esmu vairāk kā apmierināts (diemžēl nezinu, no kurienes tā klase ir cēlusies un nekāda nosaukuma tai arī isti nav. Vienk pirms kādiem 4 gadiem atklīda pie manis).

 

Bet cik atceros no Smarty, tad visa tā padarīšana ar HTML'ā dzenamajiem IFiem un cikliem bija lieka, jo to visu var izdarīt ar vēl mazāku koda un templāšu parsēšana templātes iekš Smarty arī ir realizēta vienk. kretīniski.

Link to comment
Share on other sites

×
×
  • Create New...