/ / Spojenie dvoch polí django v dvoch rôznych modeloch - python, django

Spojenie dvoch polí django v dvoch rôznych modeloch - python, django

Som trochu blázon, pretože som si istý, že ide o super jednoduchú otázku. Mám dva modely v 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)

Jedná sa o futbalovú databázu a keď existujeHrať, ktoré zaznamenáva ďalšiu tabuľku, kde sa uchovávajú dodatočné údaje o extra bode: FGXP. Takže vo funkcii Play pid je primárna klávesa. V FGXP existuje prepojenie medzi pidom a pidom v hre. V mojom modeli Django by som ich mal prepojiť? Po skončení dotazu budem potrebovať pripojiť sa k údajom.

Vďaka - ospravedlnenie, ak duplikát.

odpovede:

2 pre odpoveď č. 1

Môžete urobiť zahraničný kľúč z FGXP na Play ako

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

čo by bolo FGXP existujú na Play ako atribút fgxp_set

Myslím, že FK by tu pracoval, pretože tu existuje potenciálne viac ako jedno extra bodové hry, a to najmä vtedy, keď sa nazýva trest.