Невозможно привести тип jsonb к символам, меняющимся [] - Джанго - PullRequest
0 голосов
/ 28 мая 2018

У меня есть модель django с полем

locations = JSONField(default=list, blank=True)

Я хочу изменить тип поля на ArrayField, используя:

locations = ArrayField(CharField(max_length=100))

django makemigrations создал файл миграции как:

operations = [
    migrations.AlterField(
        model_name='Employee',
        name='locations',
        field=django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=100), size=None),
    ),
]

Но при запуске миграции выдает ошибку:

django.db.utils.ProgrammingError: cannot cast type jsonb to character varying[]

LINE 1: ... "location" TYPE varchar (100) [] ИСПОЛЬЗУЯ "location" :: varchar (...

Как правильно изменить поле списка jsonb для поля массива и как типизировать преобразование jsonb в поле массива при выполнении миграции?

...