Tôi muốn có một vài phiên bản khác nhau của cùng một ngôn ngữ ở Django, được tùy chỉnh cho các quốc gia khác nhau (ví dụ: locale/en
, locale/en_CA
, locale/en_US
, v.v.). Nếu không có ngôn ngữ cho quốc gia cụ thể, tôi sẽ sử dụng phiên bản ngôn ngữ mặc định (locale/en
)).Làm thế nào để duy trì các phiên bản quốc gia khác nhau của cùng một ngôn ngữ trong Django?
Sau đó, trong tệp cài đặt cho từng trang web tôi chỉ định LANGUAGE_CODE
và LANGUAGES
.
Đối với một số lý do, ngay cả khi tôi chỉ định các cài đặt sau, các locale/en_US
dịch vẫn đang được sử dụng:
LANGUAGE_CODE = 'en'
LANGUAGES = (
('en', ugettext('English')),
)
Mặc dù tôi chỉ định rõ ràng rằng mã ngôn ngữ nên en
(không en-us
).
Tôi có thiếu gì đó không? Đã cố gắng tìm câu trả lời ở nhiều nơi, bao gồm cả tài liệu Django.
Thực ra, nếu Django hỗ trợ nó, bạn muốn duy trì các mục nhập tối thiểu trong en_CA, en_US vv và dự phòng từng trường hợp trên main * en * phần lớn thời gian, bởi vì hầu hết các từ đều giống nhau trên tất cả các hương vị. I E. chọn từ cụ thể nếu bạn tìm thấy một từ trong đó * hàng xóm * vs * hàng xóm * nhưng để lại * nhà * chỉ ở chính. –
Đó là chính xác, nhưng vấn đề là Django vì một số lý do sử dụng "en_", ngay cả khi tôi chỉ đơn giản là chỉ định "vi". Bất kì manh mối nào? Chỉnh sửa: nếu tôi chỉ định "en-ca", nó sử dụng đúng cách "en_CA". –
Không, tiếc là lời khuyên này đến từ kinh nghiệm của tôi trên một hệ thống khác và chỉ là một con trỏ để giữ cho chi phí dịch thuật của bạn giảm xuống. Chưa sử dụng hỗ trợ dịch Django. –