Chciałbym mieć kilka różnych wersji tego samego języka w Django, dostosowanych do różnych krajów (np. locale/en
, locale/en_CA
, locale/en_US
itd.). Jeśli nie ma języka dla konkretnego kraju, spodziewam się użyć domyślnej wersji językowej (locale/en
)).Jak zachować różne wersje językowe tego samego języka w Django?
Następnie w pliku ustawień dla każdej witryny określam LANGUAGE_CODE
i LANGUAGES
.
Z jakiegoś powodu, nawet jeśli określenie następujących ustawień, locale/en_US
tłumaczenia są nadal używane:
LANGUAGE_CODE = 'en'
LANGUAGES = (
('en', ugettext('English')),
)
Choć wyraźnie określić, że kod języka powinny być en
(nie en-us
).
Czy brakuje mi czegoś? Próbowano już znaleźć odpowiedź w wielu miejscach, w tym w dokumentacji Django.
Właściwie, jeśli Django obsługuje tę funkcję, należy zachować minimalne wpisy w en_CA, en_US itp. I awaryjnie powielać na zasadzie main * en * przez większość czasu, ponieważ większość słów jest taka sama we wszystkich smakach. To znaczy. wybierz z konkretnego, jeśli znajdziesz w nim słowo * sąsiad * i * sąsiad *, ale pozostawiasz * dom * tylko w głównym. –
Zgadza się, ale problem polega na tym, że Django z jakiegoś powodu używa "en_US", nawet jeśli po prostu określam "en". Jakieś wskazówki? Edycja: jeśli podam "en-ca", to poprawnie używa "en_CA". –
Nie, niestety, ta odrobina porad pochodzi z mojego doświadczenia w innym systemie i była tylko wskaźnikiem, aby obniżyć koszty tłumaczeń. Nie korzystałem jeszcze z obsługi tłumaczeń Django. –