Пользовательский ввод и выбор текста также в модели django
В модели django пользовательский ввод и текстовые варианты заполняются именем поля.
class Store(models.Model):
class Size(model.TextChoices):
MEDIUM = "M", "Medium"
LARGE = "L","Large"
shirt_size = models.CharField("Shirt Size", choices=Size.choices, default=Size.MEDIUM)
Когда django запускается с администратором для добавления записей в таблицу, он показывает выпадающий список для выбора размера, который доступен, и в то же время, я хочу иметь пользовательское заполнение также для ввода пользователем (S, XXL, и т.д.)
Вот как я обычно это делаю:
class Store(models.Model):
MEDIUM = 'M'
LARGE = 'L'
SIZE_CHOICES = (
(MEDIUM, 'Medium'),
(LARGE, 'Large')
)
shirt_size = models.CharField(max_length=20, help_text="Shirt Size", choices=SIZE_CHOICES, default=MEDIUM)
Также не забудьте про обязательный аргумент max_length в вашем CharField. Я установил его на 20 для возможного расширения SIZE_CHOICES
, но только для M
и L
будет достаточно установить его на 1.