Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][oop] Architektura aplikacji, grupy/profile i odpowiedne dla nich modele/widoki
jastu
post
Post #1





Grupa: Zarejestrowani
Postów: 382
Pomógł: 0
Dołączył: 29.11.2005
Skąd: :jestem();

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


Witam
problem opiszę na przykładzie :
- mamy w bazie rekord który dla różnych profili użytkownika wyświetla inne kolumny

Gdzie powinno się znaleźć zapytanie o rekord ?
- czy w klasie ModelUserProfil dziedziczącej po klasie ModelUser (chyba nie) ?
( tutaj mamy tylko kod do operacji na danych użytkownika )
- czy w klasie ModelDane która odpowiada za dane które chcemy uzyskać (raczej tak) ?
( wtedy trzeba do ModelDane przekazać informacje o profilu bierzącego użytkownika )
- czy w klasie ViewDane który generuje odpowiedni widok dla bierzącego usera (zdecydowanie tak) ?
( przekazujemy informacje o profilu użytkownika do widoku i na tej podstawie wyświetlamy tylko własciwe dla użytkownika dane, ale pobieramy zawsze komplet danych )

3 rozwiązanie chyba najlepsze, tylko w ModelDane zawsze byśmy pobierali te same dane, a nie każdy profil wymaga pobrania danych dla rekordu z 3 tabel (po np. jeden z profili wymaga danych z jednej tabeli) - co wtedy z wydajnością ?

Jak rozwiązujecie to u siebie ?
pzdr
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
jastu
post
Post #2





Grupa: Zarejestrowani
Postów: 382
Pomógł: 0
Dołączył: 29.11.2005
Skąd: :jestem();

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


Wydawało mi się że opisałem jasno (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Przykładowy przykład nr 2.
- mamy aplikację do ewidencji bydła hehe
- w aplikacji mamy trzy rodzaje użytkowników (użytkownik,moderator,administrator)
- wyświetlenie informacji dla użytkownika o jakimś bydlaku wymaga pobrania danych z jednej tabeli
- wyświetelenie informacji o bydlaku dla moderatora wymaga pobrania danych z dwóch tabel (join), dla administratora z 3 (join)

Pytanie -> gdzie umieścić zapytania o te dane lub/czy pobierać wszystkie dane a wyświetlać tylko wybrane (wydajność) ?

Cytat
Piszesz o że jest to zależne od użytkownika co wyświetli, ale w jaki sposób?

no właśnie ?
Cytat
Bo jak to są różnice typu NIP, nazwa itd. dla firmy a dla osoby fizycznej brak to inaczej bym to rozwiązał, niż informacje o czymś i w zależności od typu użytkownika wyświetla je lub nie.

czy o wyświetlonych informacjach/danych/linkach/przyciskach/opcjach nie decuduje właśnie typ/profil/grupa użytkownika ?

Ten post edytował jastu 12.06.2007, 23:38:01
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: 4.10.2025 - 00:01