Как перевести кнопки выбора радио?

Я использую i18n для изменения языка, проблема в том, что в нескольких моих формах я смог сделать перевод, проблема в том, что когда в forms.py есть радиокнопка, я не знаю, как перевести опции

html

<div class="mb-3">
  <label class="form-label d-block mb-3">{% trans "Country" %}:</label>
  <div class="custom-radio form-check form-check-inline">
     {{ form.pais }}
  </div>
</div>

forms.py

PAIS = (
   ('United States', 'United States'),
   ('Canada', 'Canada'),
   ('Other', 'Other'),
) 
class ClientesForm(forms.ModelForm):

   pais = forms.ChoiceField(
       choices=PAIS,
       widget=forms.RadioSelect(attrs={'class':'custom-radio-list'}),

   )

Вы можете работать с функцией gettext_lazy(…) [Django-doc] для работы с лениво переводимыми строками:

from django.utils.translation import gettext_lazy as _

PAIS = (
   ('United States', _('United States')),
   ('Canada', _('Canada')),
   ('Other', _('Other')),
)

Это добавит переводы для United States, Canada и т.д., когда вы делаете переводы, и переведет текст при отображении формы.

Для получения дополнительной информации смотрите раздел Ленивые переводы документации.

Вернуться на верх