![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Witam,
nie wiem czy tytuł tematu opisuje dobrze mój problem ale mam nadzieję, że tak właśnie jest. Otóż przymierzamy się do pisania sklepu internetowego. Sklep będzie posiadał m.in. standardowe tabele typu użytkownicy, kategorie, produkty itd. Założenia są takie aby uruchomić sklep główny, a równocześnie móc prowadzić sklepy podrzędne (stojące na tym samym serwerze co sklep główny). Sklepy podrzędne miałyby wszystkie tabele własne poza tabelą produktów, która byłaby wspólna dla wszystkich sklepów (m.in. wspólne ceny, stany magazynowe itd). Jak to teraz najlepiej rozegrać? Początkowo myśleliśmy aby każdy sklep posiadał własne tabele oraz tabele typu master (m.in. właśnie produkty). Wiem, że można w Symfony korzystać z kilku baz równocześnie (link). Jednak takie rozwiązanie wymusza duplikację kodów na poziomie PHP (nowy sklep = nowy projekt = przekopiowanie odpowiednich klas). Czy jest jakiś sprytny myk, dzięki któremu wszystkie te aplikacje korzystałyby z jednych zasobów kodów PHP? Kolejnym pomysłem jest stworzenie jednej aplikacji, która w każdej tabeli w bazie danych przechowuje id typu aplikacji podrzędnej. W bootstrapie możnaby wówczas określać id aktualnie używanego sklepu (po adresie) i tworzyć odpowiednią wartość konfiguracyjną (chociażby zdefiniować stałą). Może nie w bootstrapie - to gdzie? Reasumując: system powinien spełniać wymogi: - wspólne źródła danych dla poszczególnych pod-aplikacji (typu produkty) - osobne źródła danych dla poszczególnych pod-aplikacji (typu użytkownicy) - korzystanie z jednych i tych samych plików klas, modeli, szablonów itd. Miał ktoś podobny dylemat? Pozdrawiam, pion Ten post edytował phpion 11.07.2008, 11:42:50 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Dzięki serdeczne za konkretną koncepcję. Coprawda na razie nie wiem jeszcze jak się za to wszystko zabrać ale będę próbował. W każdym bądź razie dzięki serdeczne za pomoc, w razie problemów będę pisał. Jeszcze raz dzięki.
PS: wydaje mi się, że rozwiązanie z identyfikatorem sklepu na poziomie poszczególnych tabel będzie faktycznie najlepsze. Zalety: - brak duplikacji tabel; z czasem mogłoby być ich sporo - ewentualna modyfikacja modelu (czyli i struktury tabel) nie byłaby trudna - wygenerowanie admina również nie powinno stanowić problemu (podczas logowania wybieramy rodzaj sklepu i na podstawie tej wartości ustawiany jest jakiś mega globalny filtr) - dodanie/usunięcie sklepu - również nie stanowi najmniejszego problemu ![]() Ten post edytował phpion 11.07.2008, 12:52:59 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.06.2025 - 13:32 |