Efter lite grävande i Django-dokumentationen :
Betoning min. Har du unique=True
för fältet? Det här är en Django-begränsning, PostgreSQL skulle inte ha något emot det. Du kanske vill byta till datatyp text
. TextField
på Django-språk.
Gamla idéer:
user
är ett reserverat ord i PostgreSQL
och valfri SQL-standard. Använd det inte som kolumnnamn.
Du kunde använd det, om du har skrivit det med dubbla citattecken, men håll dig borta från den dårskapen. Använd bara inte reserverade ord för identifierare. Någonsin.
Också ...
user = motor_trend,
name = 'Camaro 2010',
category = cars,
Någon speciell anledning till motor_trend
och cars
är inte citerade som de andra värdena? Främmande nycklar, som @Ignacio kommenterade?