Я пытался создать модель django и получил эту ошибку TypeError: 'type' object is not subscriptable

    gender_choices = models.CharField[('M', 'Male'), ('F','Female')]
    gender = models.CharField(choices=gender_choices, max_length=1, default=None, null=True)

Для выбора следует построить простой список, а не использовать CharField, так:

class SomeModel(models.Model):
    GENDER_CHOICES = [('M', 'Male'), ('F','Female')]
    gender = models.CharField(
        choices=GENDER_CHOICES,
        max_length=1,
        default=None,
        null=True
    )

Вы можете использовать как

gender_choices = (('M', 'Male'), ('F','Female'))
gender = models.CharField(choices=gender_choices, max_length=1, default=None, null=True)

Примечание : Первый элемент в каждом кортеже - фактическое значение, которое нужно установить, а второй элемент - имя.

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