Многоязычный веб-сайт с переводами, хранящийся в столбцах одной таблицы. Необходимо передать запрос в шаблон с уже отфильтрованными переводами. Языковая переменная хранится в сеансе.Аннотатный запрос с значением поля
class Item(models.Model):
name = models.CharField(max_length=128)
description = models.ForeignKey(Localization)
class Localization(models.Model):
klingon = models.TextField(blank=True, null=True, verbose_name='klingon')
english = models.TextField(blank=True, null=True, verbose_name='english')
мысль была бы неплохо просто аннотировать СМО с необходимым текстом, однако мне не удалось найти, как пояснение значения поля. Что-то вроде
item = Item.objects.all().annotate(text=description.klingon)
Другой подход будет использовать шаблон фильтра, как
item.description|choose_lang:request
но сортировка СМО перед шаблон кажется аккуратнее.
Спасибо. Я сам пробовал эти вещи, но оказалось, что я ошибся в другом месте кода, и когда он потерпел неудачу, я понял, что у меня есть эти инструкции F неправильно :) Теперь все работает нормально. –