![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 22.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam pewien problem myślowy. Potrzebuje zrobić wersje językowe w aplikacji i zastanawiam się jak zrobić tłumaczenie danych w bazie. Na początku myślałem aby do bazy zapisywać otagowany tekst np. {pl}polski{/pl}{en}english{/en}, a następnie pobierać go i konwertować na xml. Jednak mam watpliwosc co do wydajności takiego rozwiązania. Praktycznie każdy tekst przed wyswietleniem każdego rekordu będzie trzeba odpowiednio obrobić co wydaje się troche czasochłonne. Drugi sposób polega na przechowywaniu wszystkich tłumaczeń w jednej tabeli i odnosić się do nich po przez klucz obcy.
Który z tych sposobów jest lepszy pod względem wydajnośći? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 763 Pomógł: 117 Dołączył: 15.03.2010 Skąd: void Ostrzeżenie: (0%) ![]() ![]() |
Cóż, zdecydowanie bardziej optymalne jest drugie rozwiązanie, ze względu na bezpośrednie pobieranie danych z bazy bez potrzeby przetwarzania. Twój pomysł (2) przypomina działanie paczek językowych w popularnych sklepach internetowych, z tym że zamiast operować na plikach, Ty przerzucasz to wszystko do bazy danych więc na większą skalę jest to bardziej wydajny sposób. Jedynym minusem wg. mnie jest stosunkowo skomplikowana obsługa, bo w końcu łatwiej wpisać coś do pliku i kliknąć "zapisz", niż ładować do bazy za pomocą odpowiedniego oprogramowania pośredniego. Zastanowiłbym się - czy to koniecznie musi być oparte na bazie danych? Kluczowe - stałe elementy systemu ze spokojem możesz wpakować jako paczkę językową, a w niej stałe z odpowiednią zawartością. Dalej tłumaczyć nie będę bo pewnie nie raz miałeś styczność z czymś podobnym
![]() -------------------- Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 22.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki za odpowiedź. Tekst statyczny jest tłumaczony i przechowywany w plikach jednak niektóre elementy dodawane są z panelu admina. Problem polega na tym, że druga metoda jest dość czasochłonna - wymaga przerobienia wiekszość zapytań ;/. Nie ma chyba jednak nad czym kombinować i lepiej poświęcić trochę wiecej czasu i zrobić to raz a dobrze.
Ten post edytował korniks 18.10.2012, 23:36:01 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Może zerknij jak rozwiązano to w Symfony2? Jest tam bundle do tego typu operacji Gedmo/Translatable czy jakoś tak...
-------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 763 Pomógł: 117 Dołączył: 15.03.2010 Skąd: void Ostrzeżenie: (0%) ![]() ![]() |
Thek jak zwykle dobrze prawi, przy okazji i ja dziękuję za informację, być może będę musiał skorzystać z podobnego rozwiązania w najbliższej przyszłości
![]() -------------------- Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 04:44 |