Junior — Middle
Could you explain what the IntegerChoices class is in the context of Django or another framework?
sobes.tech AI
Answer from AI
In Django, the IntegerChoices class is used to define a set of constants with integer values that can be used as choice options for model fields (for example, IntegerField). It provides a convenient way to specify a limited set of valid values with understandable labels.
Example usage:
from django.db import models
class Status(models.IntegerChoices):
DRAFT = 1, 'Draft'
PUBLISHED = 2, 'Published'
ARCHIVED = 3, 'Archived'
class Article(models.Model):
status = models.IntegerField(choices=Status.choices, default=Status.DRAFT)
Here, Status is a subclass of IntegerChoices, where each element is a pair (value, label). This improves code readability and simplifies working with value choices in the database and interface.