Я занимаюсь локализацией приложения Django.Сделать Django admin использовать переведенные имена полей
Интерфейсный сайт работает отлично, а сайт администратора Django также выбирает выбранный язык.
Но в некоторых местах он использует только языковые настройки и использует по умолчанию английские версии имен полей и столбцов, хотя они были переведены. Зачем? Как я могу использовать переведенные имена для имен столбцов и полей в интерфейсе администратора?
Пример:
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"))
За что я получаю:
- Перевод стандартных текстов администратора, такие как «Добро пожаловать» и «Выход» в верхней
- Перевод на SELECT вариантов оплаты тип
- Не переводимые имена столбцов и этикеток для полей («Пользователь», «Оплата»)
Я использую Django 1.0.2. Тексты, которые не переводятся, отображаются в файлах локали вместе с работающими.
Под вопрос: возможно ли локализовать имена приложений?
Где сделал 'self' имя в' я. ВАРИАНТЫ? Разве это не повышает значение NameError? –
@ChrisWesseling Я не очень хорошо разбираюсь в Python, но не сам ссылаюсь на сам модуль в этом случае? ОПЦИИ определяется прямо над «порядком класса» ... –
Первым параметром связанного метода является сам объект. По соглашению это называется self, но 'self' не является волшебным ключевым словом, как' this' в JavaScript или PHP; он должен быть явно связан. Но я могу ошибаться. –