Не удается преобразовать в мужской род в django?
Я пытаюсь экспортировать список клиентов с помощью django.
class Gender(models.IntegerChoices):
FEMALE = 1, female_label
MALE = 2, male_label
gender = models.PositiveSmallIntegerField(
db_column="Gender",
verbose_name=gender_label,
choices=Gender.choices,
blank=True,
null=True,
)
и я вызываю строку экспорта следующим образом:
customer.gender_label
и я получаю такую ошибку Не удается преобразовать 'Male' в Excel
у вас есть идеи, почему появляется эта ошибка?
Вы можете получить отображение выбора (здесь значение для female_label
и male_label
) с помощью метода .get_gender_display()
, так:
customer.get_gender_display()
Действительно, как говорится в документации по .get_fieldname_display()
[Django-doc]:
Для каждого поля, которое установлено
choices
, объект будет иметьget_FOO_display()
метод, гдеFOO
- имя поля. Этот метод возвращает "человекочитаемое" значение поля.