Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [ZendFramework]Domyślne i "spersonalizowane" aplikacje
piotrooo89
post
Post #1


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




Witam,

mam pytanie natury organizacyjnej, jak najlepiej w ZF zbudować aplikacje która miała by działać w ten sposób:

mam główne założenia mojej aplikacji powiedzmy, że są to założenia które wdrażamy default'owo klientowi, i jakiś "niesforny" klient chce drobną modyfikacje pod swoje potrzeby w aplikacji, i chce tylko wdrożyć u niego te aplikacje, nie tracąc jednak głównej funkcjonalności.

czyli są moduły i klient chce zmienić dany moduł, jak dostarczyć mu rozwiązanie custom'owe (nie burząc głównej gałęzi projektu)

Przykład:
mam tabelkę wyświetlającą u wszystkich klientów Imię, Nazwisko, po pozyskaniu nowego klienta on chce żeby jemu do tej tabelki dołożyć maila i avatara, ale chce to zrobić TYLKO u niego, reszta klientów podczas wdrażania dalej będzie miała tylko Imię i nazwisko tylko ten jeden będzie miał kontroler który pokieruje w taki sposób żeby wyświetlić mu odpowiednie dane?

Proszę o jakieś nakierowanie, jeśli moje założenia są nie do końca jasne pytajcie, a może są lekko złe więc też proszę o naprowadzenie.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
zend
post
Post #2





Grupa: Zarejestrowani
Postów: 580
Pomógł: 85
Dołączył: 25.03.2010
Skąd: Skrzyszów :)

Ostrzeżenie: (0%)
-----


Nie miałem okazji tego jeszcze sprawdzić w praktyce, ale ostanio spotkałem się z podobnym problemem, moje przemyślenia na szybko to:

1)
  1. class Users_UserController{/*podstawowy kontroler*/ }
  2. class Default_UserController extends Users_UserController {}


2)Dodajesz routing '/users/user/:action/*' => array('controller' => 'user', 'module' => 'default', 'action' => 'index),
3) Kopiujesz widoki do modułu default
4)Formularze musisz pobierać oczywiście przez jakąś metodę z kontrolera bazowego żeby dalo się to potem ładne nadpisać
5)Założenia że będziesz nadpisywał konkretne moduły musisz zrobić już na samym początku i w innych modułach wyświetlać użytkowników przez
$view -> render('users/singleUser.phtml') + nadpisać odpowiednio Zend_View

@note - kontrolery niekoniecznie musisz nadpisywać w głównym module, mozesz też stworzyć moduł z przeróbkami dla konkretnego klienta

Jeśli chodzi Ci o konkretny przykład z tabelką to chyba najlepszym pod względem założeń, ale też i najbardziej nieoptymalnym było by wykorzystanie helpera partialLoop. Albo tak jak wspominałem wcześniej nadpisanie Zend_View dla konkretnego klienta i zahardcodowanie innej ścieżki to tego konkretnego widoku

Poza tym podłączam się do pytania, jestem ciekaw jak inni to rozwiązują

Ten post edytował zend 20.07.2011, 15:34:03
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.09.2025 - 22:01