Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wyświetlanie kategorii `nested set`, Struktura chwieje się
WebCM
post 20.12.2008, 13:07:39
Post #1





Grupa: Zarejestrowani
Postów: 375
Pomógł: 20
Dołączył: 28.07.2006

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


Stosuję strukturę kategorii nested sets. Przykładowe drzewo:
Kod
Programy
   Freeware
   Pirackie
      Polskie
      Zagraniczne
   Shareware
Filmy
   Akcji
   Historyczne

Struktura tabeli cats w bazie danych:
Kod
ID | name | parent_id | type | left | right

Przy wyświetlaniu wszystkich kategorii wszystko jest dobrze. Kod: http://pastebin.com/d1cb5723
Gdy trzeba ukryć niektóre kategorie, cała struktura chwieje się - piekło. Przykłady w praktyce:
  • Formularz do edycji artykułów -> trzeba wyświetlić do wyboru tylko kategorie o type ARTYKUŁY, czyli `type` = 5
  • Użytkownik ma uprawnienia tylko do wybranych kategorii
Rozwiązaniem może być dodatkowe pole depth, ale wolałbym uniknąć dodawania dodatkowego pola do struktury tabeli.

Zastanawiam się, czy nie przejść np. na materialized path lub inny schemat, bo chyba więcej problemów być nie może. W nested sets zmiana położenia kategorii w drzewie wiąże się ze skomplikowanymi zapytaniami lub przebudową całego drzewa (na szczęście ten problem już rozwiązałem).


--------------------
„Jesteśmy różni, pochodzimy z różnych stron Polski, mamy różne zainteresowania, ale łączy nas jeden cel. Cel ten to Ojczyna, dla której chcemy żyć i pracować.” Roman Dmowski
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 24.07.2025 - 21:45