Bartek B.

Bartek B. PHP, SQL

Temat: [Smarty] Tablicowa w Cycle

Witam,

ze smarty korzystam od dłuższego czasu, ale zaciąłem się w pewnej kwestii. Mój problem polega na tym, że potrzebuję wyświetlać na przemian 3 pewne wartości a dokładniej tekst + zmienną tablicową.
O co dokładnie chodzi?

o to:

{cycle name="first_a" values="opis $tablica.kolumna, $tablica.kolumna2 text, $tablica.kolumna3 text"}


w tablicach dane są oczywiście, wszystko sprawdzone, tekst sam w sobie też prawidłowo się wyświetla, no ale zawartości tablic na przemian pokazywać się niestety nie chcą.

z góry dziękuję za pomoc,
pozdrawiam,
Bartek
Marcin Witek

Marcin Witek isido.pl ułatwia
pracę - polski sytem
zarządzania
projekt...

Temat: [Smarty] Tablicowa w Cycle

spróbuj backticków:


{cycle name="first_a" values="opis `$tablica.kolumna`, `$tablica.kolumna2` text, `$tablica.kolumna3` text"}



chociaż mi to kilka razy działało poprawnie, a raz czy dwa działało magicznie (tzn dawało losowy element z listy). Wtedy robiłem toporne "if" ze sprawdzaniem $smarty.foreach.....iteration % 3...Marcin Witek edytował(a) ten post dnia 12.12.09 o godzinie 00:26

konto usunięte

Temat: [Smarty] Tablicowa w Cycle

Bartek Bujnowski:
Witam,

ze smarty korzystam od dłuższego czasu, ale zaciąłem się w pewnej kwestii.

Pytanie Offtopic.
Jaki jest sens korzystania z czegoś takiego jak Smarty?
Ja niestety dostrzegam same wady tej biblioteki...
Bartek B.

Bartek B. PHP, SQL

Temat: [Smarty] Tablicowa w Cycle

Trochę plusów ma, między innymi buforowanie.
A do tego właśnie ciekawe dodatki typu cycle itp.
Wiadomo, że to można samemu robić, ale tak jest wygodniej, do tego jak się dorzuci ADOdb to już robi się sympatycznie.

Sposób z ` działa, ale 3 opcji to on na przemian jednak dać nie chce, trudno będę coś dalej kombinował

Sprawa zakończyła się na:

if $smarty.foreach.petla.iteration%3 == 0 i tak do 2
Bartek Bujnowski edytował(a) ten post dnia 12.12.09 o godzinie 12:11
Przemek Szalko

Przemek Szalko iOS Developer + Full
Stack Developer

Temat: [Smarty] Tablicowa w Cycle

Zawsze możesz napisać swój plugin zmieniając nieco kod tego co masz w cycle.
Bartek B.

Bartek B. PHP, SQL

Temat: [Smarty] Tablicowa w Cycle

Przemek Szalko:
Zawsze możesz napisać swój plugin zmieniając nieco kod tego co masz w cycle.

A myślałem o tym, ale okazało się, że będzie to wykorzystane tylko w paru miejscach (gdzie jest to zdublowane praktycznie) więc szkoda było zachodu.

No i z tymi if-ami zmieściłem się w "jednej linii".Bartek Bujnowski edytował(a) ten post dnia 12.12.09 o godzinie 13:38
Przemek Szalko

Przemek Szalko iOS Developer + Full
Stack Developer

Temat: [Smarty] Tablicowa w Cycle

Dwa miejsca z tym samy kodem to już o jedno miejsce za dużo :) / DRY
Bartek B.

Bartek B. PHP, SQL

Temat: [Smarty] Tablicowa w Cycle

Przemek Szalko:
Dwa miejsca z tym samy kodem to już o jedno miejsce za dużo :) / DRY

Racja racja, praktycznie taki sam, różni się zmienną (dane są z innej tablicy) trochę tekstem.

konto usunięte

Temat: [Smarty] Tablicowa w Cycle

Bartek Bujnowski:
Trochę plusów ma, między innymi buforowanie.
A do tego właśnie ciekawe dodatki typu cycle itp.
Wiadomo, że to można samemu robić, ale tak jest wygodniej, do tego jak się dorzuci ADOdb to już robi się sympatycznie.

Gdzieś czytałem, że mechanizm buforowania w Smarty wcale nie powala na kolana. Poza tym buforowanie templatów jest czymś co się powinno buforować w ostateczności. Do zadań warstwy prezentacji powinno należeć jedynie prezentowanie danych, a to powinno być ultra lekkie.
Ostatnio pracuje nad projektem, który napisany jest za pomocą Samrty i z przykrością muszę stwierdzić, że to jest jeden wielki ból w d#@% :/ Zrobienie najprostszej rzeczy wymaga nie lada gimnastyki lub szukania rozwiązania w dokumentacji.. słowem składnia Samrtiego jest dla mnie bardzo mała intuicyjna.

ps. artykuł na temat nieużyteczności Samrtiego: http://lutt.se/blog/2006/08/13/why-template-engines-li...
Marcin Witek

Marcin Witek isido.pl ułatwia
pracę - polski sytem
zarządzania
projekt...

Temat: [Smarty] Tablicowa w Cycle

Łukasz Bandzarewicz:
Ostatnio pracuje nad projektem, który napisany jest za pomocą Samrty i z przykrością muszę stwierdzić, że to jest jeden wielki ból w d#@% :/ Zrobienie najprostszej rzeczy wymaga nie lada gimnastyki lub szukania rozwiązania w dokumentacji.. słowem składnia Samrtiego jest dla mnie bardzo mała intuicyjna.

a tu się zgodzę... zacząłem dawno, dawno temu od smarty, potem był framework MVC i... popełniliśmy jeden, jedyny projekt, który był połączeniem Smarty i frameworka. Do tej pory plujemy sobie w brodę ;) Separację warstwy prezentacji zapewnia framework, cache robimy własnym softem, a to co zostaje przy smarty straszliwe utrudnia wykonanie najprostszych działań, i nie raz i nie dwa kończy się na {php} {/php}
Maja Miarecki

Maja Miarecki Senior Frontend
Developer

Temat: [Smarty] Tablicowa w Cycle

Łukasz Bandzarewicz:
Gdzieś czytałem, że mechanizm buforowania w Smarty wcale nie powala na kolana. Poza tym buforowanie templatów jest czymś co się powinno buforować w ostateczności. Do zadań warstwy prezentacji powinno należeć jedynie prezentowanie danych, a to powinno być ultra lekkie.
Ostatnio pracuje nad projektem, który napisany jest za pomocą Samrty i z przykrością muszę stwierdzić, że to jest jeden wielki ból w d#@% :/ Zrobienie najprostszej rzeczy wymaga nie lada gimnastyki lub szukania rozwiązania w dokumentacji.. słowem składnia Samrtiego jest dla mnie bardzo mała intuicyjna.

Dla mnie jest w pelni intuicyjna, wszystko sie da sensownie zrobic, choc sa elementy (jak modul math) o ktorych sami tworcy pisza, zeby uzywac tylko wtedy gdy niezbedne. Dla mnie Smarty sa jedyna alternatywa przy wspolpracy z grafikami. Nigdy nie mialam zadnych problemow z ich wyswietlaniem, a graficy szybko ucza sie, ktore elementy sa nie do ruszenia.

konto usunięte

Temat: [Smarty] Tablicowa w Cycle

Maja Miarecka:

Dla mnie jest w pelni intuicyjna, wszystko sie da sensownie zrobic, choc sa elementy (jak modul math) o ktorych sami tworcy pisza, zeby uzywac tylko wtedy gdy niezbedne. Dla mnie Smarty sa jedyna alternatywa przy wspolpracy z grafikami. Nigdy nie mialam zadnych problemow z ich wyswietlaniem, a graficy szybko ucza sie, ktore elementy sa nie do ruszenia.

Zgadza się, można grafikom powiedzieć "nie ruszajcie niczego, co jest pomiędzy klamerkami { }" i po sprawie, ale równie dobrze można powiedzieć im "nie ruszajcie niczego, co jest pomiędzy tagami <? ?>" ;)
Poza tym chyba bardzo ciężko jest znaleźć grafika, który w ogóle nie kuma php lub czegoś co ma podobną składnie lub nie jest w stanie się tego nauczyć, a trzeba też wziąć poprawkę na to, że składnię Samrtiego też trzeba przyswoić.

konto usunięte

Temat: [Smarty] Tablicowa w Cycle

Robi się OT, a na temat wad/zalet smarty'ego zostało już na tej grupie wiele powiedziane.



Wyślij zaproszenie do