Столбец "Serviços" имеет тип character varying[], но выражение по умолчанию имеет тип integer СОВЕТ: Вам нужно переписать или привести выражение
Мои модели:
class Orcamento(models.Model):
id = models.IntegerField(primary_key=True)
Cliente = models.CharField(max_length=40, default=0)
Cod_Cliente= models.CharField(max_length=40, default=0)
N_Orcamento = models.CharField(max_length=40, default=0)
Endereço = models.CharField(max_length=50, default=0)
Email = models.CharField(max_length=40, default=0)
Telefone = models.CharField(max_length=40, default=0)
Departamento = models.CharField(max_length=40, default=0)
Data = models.CharField(max_length=40, default=0)
Revisao = models.IntegerField(default=0)
Serviços = ArrayField(models.CharField(max_length=100, default=[]))
def __str__(self) -> str: #função para usar o nome do objeto e não a instância
return self.Cliente
Ошибка:
column "Serviços" is of type character varying[] but default expression is of type integer
HINT: You will need to rewrite or cast the expression.
Как я могу это сделать? Я пробовал:
Serviços = ArrayField(models.CharField(max_length=100, default='empty'))
И не работает, та же ошибка. Помогите пожалуйста :/
всегда приятно встретить здесь бразильца :)
Насколько я знаю, параметр default
должен быть частью вызова ArrayField
, а не CharField
. Сработает ли следующее?
Serviços = ArrayField(models.CharField(max_length=100), default=list))
Если после исправления очевидной ошибки у вас все еще возникают проблемы, это обычно связано с проблемами более старых миграций. В этом случае вы можете удалить все файлы в каталоге migrations
(кроме __init__.py
) и запустить make migrations
и migrate
снова.