Opa, fala galera, venho através deste post no fórum registrar um possivel problema na hora de inserir uma Personalidade com GORM, para quando o Id ficar com uma string vazia na conversão do payload da request de criação,como a imagem abaixo:
O que acontece é que ao realizar o decode do Body para a nossa Struct Personalidade o campo Id recebe uma string vazia, que é o valor zero padrão do Go, para os tipos primitivos, tendo cada tipo um valor zero, ex: Int = 0, string = "" ....
Caso alguem tenha esse erro na inserção com GORM, basta adicionar a seguinte anotação na struct de personalidade:
Basta adicionar gorm:"primaryKey;autoIncrement"
a struct e caso o valor de Id seja o valor zero, ou a string vazia com essa anotação o GORM irá conseguir identificar e gerar a chave Id serial automaticamente na inserção do registro no postgresSQL