PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Chiave primaria composita in django

Prova simile sotto il codice:

class MyTable(models.Model):
    class Meta:
        unique_together = (('key1', 'key2'),)

    key1 = models.IntegerField(primary_key=True)
    key2 = models.IntegerField()

o se vuoi solo campi misti univoci:

class MyTable(models.Model):
    class Meta:
        unique_together = (('key1', 'key2'),)

    key1 = models.IntegerField()
    key2 = models.IntegerField()

EDIT:vorrei notare che c'è un problema con questo approccio se ci sono 3 colonne. Le query di aggiornamento non funzionano perché tenta di aggiornare (mette i campi pk subito dopo "SET") i campi che sono univoci insieme e ovviamente fallisce.