![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Przyjaciele php.pl Postów: 742 Pomógł: 0 Dołączył: 14.12.2003 Skąd: Gdańsk, Trójmiasto Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Stworzyłem dzisiaj swój wymarzony silnik drzewek. Taki system można podzielić na dwie oddzielne cześci: - system drzewek czyli jakby foldery (są trzymane w bazie danych) - obiekty docelowe, czyli jakby pliki. Silnik drzewek chcę wykozystać na razie do trzech podsystemów: - katalog artykułów - katalog produktów (dla sklepów internetowych) - download Mógłbym do każdego z tych trzech podystemów zrobić oddzielną tabelę ze swoimi własnymi drzewkami i zrobić z tego oddzielne moduły, ale nie chcę tego, ponieważ to ma być system elastyczny, jak najbardziej przypominający CMSa, a nie system portalowy, gdzie każdy moduł jest zupełnie odosobniony od reszty systemu. Wykożystując jeden silnik drzewek natrafiam na problem, że występują tu różne obiekty. Artykuły są przechowywane w XMLu i są obrabiane przez jakiś element systemu, a z kolei produkty mają tabele w DB obrabiane przez zupełnie inny element systemu. Aby to bardziej zobrazować (sam widzę, że to troche zagmatwane) podam przykład: http://www.php.pl/index.php/phppl/artykuly...ch_programistow Widać, że aby przechować taki element wystarczą w bazie dwa pola: tytuł i treść http://www.php.pl/index.php/phppl/skrypty/cms/ez_publish Tutaj z kolei widać, że potrzeba więcej pól: nazwa, wersja, strona www, recenzja, link itd... Obiekty są różne a mimo to CMS to rozpoznaje i uruchamia odpowiednią akcję. I tu pojawia się moje pytanie: jak to zrobić w jakiś elegancki CMSowy ( (IMG:http://forum.php.pl/style_emoticons/default/snitch.gif) ) sposób (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarząd Postów: 2 277 Pomógł: 6 Dołączył: 27.12.2002 Skąd: Wołów/Wrocław ![]() |
Cytat - system drzewek czyli jakby foldery (są trzymane w bazie danych) - obiekty docelowe, czyli jakby pliki. W swoim systemie postanowilem to w pewien sposób połączyć. To znaczy mam drzewo, ktorze przechowuje nie tylko informacje o folderach, ale również o wszystkich elementach w nich się znajdujących. Dla drzewa nie ma więc znaczenia, czy w jakimś miejscu pojawi się artykul, news, czy też folder. Otrzywiście przechowuje jednak taką informację, więc gdy już przyjdzie czas na wyświetlenie konkretnego elementu, to nie ma problemu z rozpoznaniem jego typu, i wyświetleniem odpowiedniej zawartości z odpowiedniego źródła. W ten sam sposób przygotowuje różne wersje językowe. To znaczy w drzewku jest jeden wpis, ale do niego odwołują się 4 różne zawartości, pobierane w zależności od potrzeb. Pozwala to również na znacznie uproszczone linkowanie. Zawsze bowiem wystaczy podać tylko id liścia w drzewie, a system już sam rozpozna, czym jest podany element. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 26.09.2025 - 20:49 |