Após algumas pesquisas na documentação do Django :
Destaque meu. Você tem
unique=True
para o campo? Esta é uma restrição do Django, o PostgreSQL não se importaria. Você pode querer mudar para o tipo de dados text
. TextField
na linguagem do Django. Ideias antigas:
user
é uma palavra reservada no PostgreSQL
e qualquer padrão SQL. Não o use como nome de coluna. Você poderia use-o, se você o colocou entre aspas duplas, mas fique longe dessa loucura. Só não use palavras reservadas para identificadores. Sempre.
Também ...
user = motor_trend,
name = 'Camaro 2010',
category = cars,
Qualquer motivo específico pelo qual
motor_trend
e cars
não são cotados como os outros valores? Chaves estrangeiras, como @Ignacio comentou?