![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 382 Pomógł: 0 Dołączył: 29.11.2005 Skąd: :jestem(); Ostrzeżenie: (0%) ![]() ![]() |
Chciałbym zrobić tak :
- mam sablon strony głównej w której przechowuję szkielet strony (divy i kolumny - jako główny widok).W szablonie tym zawartość każdego diva to zmienna (do której przesyłamy dane jak w szablonach).Tymi zmiennymi miały by być inne szablony (tworzone przez new Smarty). Czy jest to możliwe do zrealizowania ? Pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. ![]() |
@nospor - różnica jes faktycznie niewielka, jeśli patrzysz na wszystko od strony przykładu, który podałem. Nie jestem bez winy - podalem mylący przykład, co pewnie wynika również z mojego zaspania (IMG:http://forum.php.pl/style_emoticons/default/laugh.gif)
Ideą nie jest tu includowanie plików szablonów, tylko rezulatatów wykonania akcji . Rezultatem może być widok o nazwie 'hello.tpl', ale również 'error.tpl'. Zatem prawidłowe odwołanie przez metodę get() powinno żądać rezultatu. np. Akcja - wyybiea sobie templatke z zeleżności od $ok
W widoku (w jego częsci pierwsze - logicznej) odowłujemy się poprzez:
Oczywiście wiele zależy od implementacji warstwy prezentacyjnej. W czym moim zdaniem jeszcze jest lepsze? Ano. Tak jak wspomniałem - można w banalny sposób użyć kilku róznych systemów szablonów, co jest nieosiiągalne poprzez
Nie jest, bo tu z założenia mamy Smarty Natomiast popatrz na taką prostą modyfikację akcji sayHello()
I teraz: hello.tpl - renderowany przez smarty
error.tpl - renderowany przez PHP używające zwykłego include()
Przykład ten dalej jest obarczony wieloma błędami. np. wybór templatki w akcji jest złym rozwiązaniem.W prawdziwym systemie lepiej odseparować nawet to. Ja to robię w pliku XML <view engine="smarty">nazwa_pliku</view> Wszystkie te operacje powinny być dla użytkownika frameworka przezroczyste. Za pomocą prostych tagów, czy innej konfiguracji powinien wybrać sobie silnik renderowania i po prostu pisać kod. Resztę robi system. Tak wygląda przykładowa struktura plików, gdzie katalogi reprezentują akcje a plikiw w katalogach to dostępne szablony. Obrazek Jednej rzeczy ciągle jeszcze nie rozwiązałem - tzw. skórek - mam pomysły, ale nie jestem do nich przekonany. uff : ) Pozdrawiam Ten post edytował Cysiaczek 6.06.2007, 09:15:18 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 09:59 |