/ / Collegamento di due campi di django in due diversi modelli: python, django

Collegamento di due campi di django in due diversi modelli: python, django

Sto diventando un po 'pazzo perché sono sicuro che questa è una domanda molto semplice. Ho due modelli in django:

class Play(models.Model):
gid = models.IntegerField()
pid = models.IntegerField(primary_key=True)
off = models.CharField(max_length=5)
deff = models.CharField(max_length=5)
type = models.CharField(max_length=10)

class FGXP(models.Model):
pid = models.IntegerField()
fgxp = models.CharField(max_length=5)
fkicker = models.CharField(max_length=10)

Questo è un database di calcio e quando c'è unGioca a quei punteggi c'è un'altra tabella in cui sono contenuti ulteriori dati sul punto extra: FGXP. Quindi in Play pid è il primary_key. In FGXP c'è un collegamento tra pid e il pid in gioco. Nel mio modello Django dovrei collegarli? Finirò per aver bisogno di unire i dati quando faccio una query.

Grazie - scuse se un duplicato.

risposte:

2 per risposta № 1

Puoi fare una chiave esterna da FGXP a Play così

class FGXP(models.Model:
play = models.ForeignKey(Play, on_delete= models.CASCADE)
fgxp = models.CharField(...)
...

che farebbe FGXP esiste su a Play istanza come attributo fgxp_set

Penso che un FK avrebbe funzionato qui perché ci sono potenzialmente più di un punto extra, specialmente quando viene chiamata una penalità.