Что такое IntegerChoices

Python Middle Без компании
Что такое IntegerChoices
Ответы
IntegerChoices — это класс в Django, предназначенный для создания перечислений (enum) с целочисленными значениями. Он упрощает работу с выбором вариантов в моделях, формах и сериализаторах, обеспечивая читаемость и удобство. **Пример:** ``` from django.db import models class Status(models.IntegerChoices): DRAFT = 0, 'Черновик' PUBLISHED = 1, 'Опубликовано' ARCHIVED = 2, 'В архиве' class Article(models.Model): status = models.IntegerField(choices=Status.choices, default=Status.DRAFT) ``` **Особенности:** - Значения хранятся как `int` в БД. - Автоматически генерирует `.choices` для использования в полях. - Поддерживает удобные методы: `Status(1).label` → `'Опубликовано'`. - Совместим с Python-стилем (`Status.PUBLISHED` вместо магических чисел).