acztery
9.11.2006, 17:23:47
Witam właśnie kocze system cms i mam mały kłopot.
Dokładniej w systemie można mieć wiele wersji językowych. no dodajemy 3 wersje ( polską , niemiecka, angielska - ustawimy jako domyślną polską ) dodając dokumet, dokument dodaje sie tyle razy ile wersji jezykowych czy w polskiej , niemieckiej i angielskie )
np wybieramy jezyk polski dodajemy w nim dokument w pozostalych sa tworzene takie same dokumenty i tych samych nr ID z tym ze maja rozne prefixy jezykowe tj. de i en a polsi ma pl.
no i moje pytanie.
jak bede w wersji np niemieckiej i usune jakis dokumnet czy usuwac ma wszystkie z wszystkich wersji czy tylko z niemieciej czy moze ma popstu czysccic zawartosc dokumentu.
jezeli go usunie to jak zechcemy dodac odpowiednij usunietej juz wersji co wtedy ... moze jakies pomysly. ja mysle zeby zeby usuwal we wszystkich wersjach. a jak sie zechce aby dokument nie byl pokazywany to to sie do deaktywuje...
tiraeth
9.11.2006, 20:05:29
Bez sensu

To nie może o tym zadecydować użytkownik/moderator usuwający dokument? Przecież to jest kilka checkboxów z wyborem języków, w których ma usunąć dokument :]
acztery
9.11.2006, 20:35:19
zle mnie zrozumiales
taka sytuacja
mam dokument test w 3 jezykacj niemiecki, angielski, polski
wchodz do niemieckiego i usuwam go
wtedy w polskim i angielskim mamy dokument test ale w niemieckim nie
ale po tygodniu sie rozmyslimy i zechcemy dodac znowu ten dokument ... co wtedy
checkbosy to dobre rozwiązanie ale ja mam inne ale podobne.
athabus
9.11.2006, 21:51:53
Nigdy nie zastanawiałem się nad cms'ami wielojęzykowymi, ale jedna rzecz, nad którą należy się zastanowić to to, czy w ogóle te wersje muszą być ze sobą powiązane. W sensie czy każdy dokument występuje w n-wersjach. IMHO raczej należy to połączyć dosyć luźno. Dlaczego? Otóż pamiętam, gdy kiedyś pracowałem w pewnej firmie, która miała tam podobny cms z kilkoma wersjami językowymi. Problem jaki się pojawił to to, że na stronie byly wersje języków, którymi nikt biegle nie władał - znaczy dogadywaliśmy się po rosyjsku czy niemiecku, ale nikt nie znał na tyle tych języków, żeby podjąć się radagowania notek na stronę. I tak szkielet był przetłumaczony na wszystkie języki, ale np. gdy ktoś chciał dodać nowość, to musiał tworzyć od razu kilka wersji językowych... i tak nowości i nowe produkty nie były dodawane na stronę w ogóle ;-). Potem system został zmieniony na taki, który umożliwiał tworzenie niezależnej treści i wersja polska i angielska były tworzone na bierząco, natomiast rosyjskia, ukraińska i niemiecka raz na jakiś czas uzupełniana "kompleksowo" przez biuro tłumaczeń.
Wiem, że to może nie do końca odpowiedź na Twoje pytanie, ale bazując na powyższym uważam, że musisz trochę "poluźnić strukturę" - np. wersje artykułów w innych językach mają być opcjonalne. Co do usuwania, to wydaje mi się, że user sam powinien decydować czy usunąć tylko artykuł w danym języku czy we wszystkich językach. Generalnie może takie rozwiązanie: masz jeden artykuł w n wersjach językowych i jeśli user usuwa daną wersję językową to tak naprawdę jej nie usuwa tylko ją "zeruje". Możesz dodać np. pole "published" w bazie dla każdej wersji i jeśli jest ono wartości "false" to wtedy artykuł się nie wyświetla, ale gdzieś tam jest w bazie "zarezerwowane dla niego miejsce".
Jeśli natomiast sytuacja miałaby być normą, że różne artykuły są w różnych wersjach ( w sensie często artykuł nie ma wszystkich wersji językowych), to raczej pomyślałbym o zostosowaniu jakichś prostych realcji, żeby nie przechowywać zbyt wielu zbędnych, pustych pól w bazie.
Cóż generalnie wszystko zależy od tego, jak masz bazę zrobioną i na ile możesz pozwolić sobie na modyfikację.
acztery
9.11.2006, 22:09:32
takiej odp oczekiwałem bee musiał pomyśleć. mysle ze te zerowe dokumenty do dobra sprawa
a przy usuwaniu bedzie sie pytal czy usunac tylko ten jeden = zerowac czy wywalic wszystko = usunac dokumenty z wszystkich jezykow ale musze przemyslec to .
PS system jest dosc daleko ale jest tak napisany ze nie musze ingerowac az tak bardzo, jest rozbity na pare klas i funkcji itp wiec nie ma problemu
dzieki...