Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony]Rozne Kategorie - Różne modele danych
Ormin
post
Post #1





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 3.02.2009

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


Witajcie =)

Tworzę system ogłoszeniowy i stanąłem przed następującym problemem. Otóż, mamy różne kategorie ( Domy, samochody, gry itd. itd. ) i do każdej z nich chciałbym przydzielić inny model danych. Każdy z nich ma nieco inne pola ( Dom - ma metraż, liczbę pięter i takie tam rzeczy, samochód ma markę , model itp. - słowem, konkretne dla danej branży atrybuty ). No i teraz pytanie..

Jak to składować?
Wymyśliłem dwa rozwiązania:
- Osobne modele ( Car_Model, House_Model etc. etc. ) dla każdego. Do tego każda tabela ma swoje. Ma to swoje zalety - można łatwo przeszukiwać taką tabele, np. . Z drugiej strony - Masz, przelicz liczbę wszystkich ogłoszeń , albo wyciągnij 10 najnowszych. Mam szperać po każdej tabeli?...
- Jeden model i jedna tabela ( Product_Model ). Zasadniczy problem w tym, że nie wiem jak logicznie złożyć tu dane. Można teoretycznie serializować dane, ale jak to potem przeszukiwać?

Jak widać jednak, oba są dalekie od ideału. A co Wy proponujecie? Discuss . (IMG:style_emoticons/default/winksmiley.jpg)

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
destroyerr
post
Post #2





Grupa: Zarejestrowani
Postów: 879
Pomógł: 189
Dołączył: 14.06.2006
Skąd: Bytom

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


Pytanie jaki to ma związek z frameworkiem?

Możesz to zrobić poprzez dziedziczenie (np. concrete inheritance). Możesz to zrobić też przez dodatkową tabelę, co w gruncie rzeczy będzie bardzo podobne do concrete inheritance.
Oczywiście takie rozwiązanie jest raczej statyczne, czyli dodanie atrybutu lub branży wymaga dodania modelu i całego cyrku z tym związanego. Możesz to zrobić dynamicznie, czyli modele takie jak branża, atrybut, ogłoszenie + odpowiednie relacje i powinno być miło choć jest więcej roboty przy programowaniu.

Rysuj, rysuj, rysuj...
Go to the top of the page
+Quote Post
Wave
post
Post #3





Grupa: Zarejestrowani
Postów: 332
Pomógł: 6
Dołączył: 13.01.2005

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


Rozwiązałem w tej chwili problem metodą dynamiczną w stylu:
kategorie, pola formularza, ogłoszenia, szczegóły ogłoszenia

1. do kategorii przypisuje odpowiednie pola formularza (nazwa,max.dlugosc,min.dlugosc,wymagane,rodzaj,ukryte,wlasciwosci)
2. w ogloszeniach tylko pola stałe dla każdej kategorii
3. formularz generuje pola formularza kategorii i zapisuje każde pole jako rekord w szczegółach ogłoszenia

niestety to jest masakra z kodowaniem, tym bardziej, że wszystko musi być wielojęzykowe ale to jedyne rozwiązanie (IMG:style_emoticons/default/sad.gif)
boje się też jak będzie wyglądać baza później.

co do jednego modelu, problem z wieloma polami lub serializacją, wyszukiwaniem i ustalaniem relacji pole-kategoria no i tak jak wspomniano - rozwiązanie statyczne...


Go to the top of the page
+Quote Post

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: 24.12.2025 - 21:57