Tôi đang thực hiện bản địa hóa ứng dụng Django.Làm cho quản trị viên Django sử dụng tên trường đã dịch
Trang web giao diện người dùng hoạt động tốt và trang quản trị Django cũng chọn ngôn ngữ đã chọn.
Nhưng nó chỉ áp dụng cài đặt ngôn ngữ ở một số địa điểm và sử dụng phiên bản tiếng Anh mặc định của tên trường và cột, mặc dù đã được dịch. Tại sao? Tôi làm cách nào để sử dụng tên đã dịch cho tên cột và trường trong giao diện quản trị?
Ví dụ:
class Order(models.Model):
OPTIONS = ((0, _("Bank transfer")), (1, _("Cash on delivery")),)
user = models.ForeignKey(User, name=_("User"))
payment = models.IntegerField(choices=self.OPTIONS, name=_("Payment"))
Đối với mà tôi nhận được:
- dịch văn bản quản trị chuẩn như "Chào mừng" và "Thoát" ở
- Translated Options chọn hàng đầu cho việc thanh toán loại
- KHÔNG dịch tên cột và nhãn biểu mẫu cho các trường ("Người dùng", "Thanh toán")
Tôi đang sử dụng Django 1.0.2. Các văn bản không được dịch đã xuất hiện trong các tệp miền địa phương cùng với các văn bản hoạt động.
Câu hỏi phụ: có thể bản địa hóa tên ứng dụng không?
đâu đã làm 'cái tên self' trong 'tự. OPTIONS' đến từ đâu? Điều này không làm tăng một NameError? –
@ChrisWesseling Tôi không giỏi về Python nhưng không tự giới thiệu bản thân mô-đun trong trường hợp này? OPTIONS được định nghĩa ngay trên "class Order" ... –
Tham số đầu tiên của phương thức bound là chính đối tượng đó. Theo quy ước, điều này được đặt tên là self, nhưng 'self' không có từ khóa ma thuật như' this' là trong JavaScript hoặc PHP; nó phải được ràng buộc một cách rõ ràng. Nhưng tôi có thể sai. –