Essayez un code similaire ci-dessous :
class MyTable(models.Model):
class Meta:
unique_together = (('key1', 'key2'),)
key1 = models.IntegerField(primary_key=True)
key2 = models.IntegerField()
ou si vous ne souhaitez que des champs mixtes uniques :
class MyTable(models.Model):
class Meta:
unique_together = (('key1', 'key2'),)
key1 = models.IntegerField()
key2 = models.IntegerField()
EDIT :Je voudrais noter qu'il y a un problème avec cette approche s'il y a 3 colonnes. Les requêtes de mise à jour ne fonctionnent pas car elles essaient de mettre à jour (met les champs pk juste après "SET") les champs qui sont uniques ensemble et échouent évidemment.