Django 3.0 - Многоязычные модели - Как заставить __str__ возвращать значение для текущего используемого языка? - PullRequest
0 голосов
/ 02 мая 2020

Я разрабатываю приложение Django 3.0. Это приложение должно поддерживать два языка, французский и английский sh. Я не предполагаю, что в будущем будет поддерживаться какой-либо другой язык.

Учитывая, что у меня есть только два языка, я хочу поддерживать их непосредственно в моделях, а не прибегать к приложениям, которые делают такие интересные вещи, как добавление их на муха (из соображений производительности и простоты).

Теперь, допустим, у меня есть класс модели, который выглядит следующим образом:

class Organization(models.Model):
  name_en = models.CharField(max_length=100)
  name_fr = models.CharField(max_length=100)

  def __str__(self):
      # how do I return the name_en or name_fr, based on active language ? 

Я предполагаю, что это может быть связано с lazy_get_text , но я чувствую, что что-то упустил.

Кроме того, в шаблонах, кроме blocktrans для отображения / форматирования полей на основе активного языка, есть что-то еще, что я должен знать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...