PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Mehrere Standardwerte für die Spalten-ID der Tabelle angegeben

Versuchen Sie, die id explizit anzugeben -Feld und als Primärschlüssel markieren:

class UserProfile(models.Model):
    id = models.BigIntegerField(primary_key = True)
    user = models.OneToOneField(User)
    avatar = models.ImageField(blank=True, upload_to=get_image_path, default='/static/image/avatar/male.png')
    age = models.IntegerField(default=4, validators=[MinValueValidator(3), MaxValueValidator(99)])

Django sollte automatisch eine Sequenz für dieses Feld erstellen.

Es kann sein, dass der User Fremdschlüssel ohne explizit definierten Primärschlüssel verwirren das ORM, obwohl das nur eine Theorie ist.