Ho trovato la soluzione.
Poiché django ha bisogno della chiave primaria (sia l'ID composito che l'ID di un singolo campo), ho provato a impostare primary_key = True in ogni campo nella sua combinazione di tasti compositi e aggiungere quei campi in Meta e gruppi in unique_together
class ReportPvUv(models.Model):
report_id = models.ForeignKey(Reports, primary_key=True)
rdate = models.DateField(primary_key=True)
fdate = models.DateTimeField(primary_key=True)
ga_pv = models.BigIntegerField()
ga_uv = models.BigIntegerField()
ur_pv = models.BigIntegerField()
ur_uv = models.BigIntegerField()
da_pv = models.BigIntegerField()
da_uv = models.BigIntegerField()
class Meta:
db_table = 'report_pv_uv'
unique_together = ('report_id', 'rdate', 'fdate')
e quando corro makemigrations, non ci sono campo ID in esso script migrazioni: D
ringrazia tutti
Oh no !!. Non è possibile impostare più chiavi primarie. È necessario impostarlo come 'unique = True' e avere solo una chiave primaria – karthikr
Le chiavi primarie a più colonne ** sono ** supportate da Django. Ci sono molti problemi con questo approccio. Vedi https://code.djangoproject.com/wiki/MultipleColumnPrimaryKeys – Selcuk
ok, va bene. Ho cambiato in unique = True – HQM