Я пытаюсь добавить данные в мой сериализатор.У меня есть модель Game
, а Game
может иметь несколько моделей Match
.Дело в том, что модель Game
не знает об этих отношениях.Связь с моделью Match
является внешним ключом к Game
.
Однако бывают случаи, когда я получаю Game
, и я хочу включить в них модели Match
.Вот моя модель для Game
:
import uuid
from django.db import models
from django.utils import timezone
class Game(models.Model):
created_at = models.DateTimeField(editable=False)
id = models.UUIDField(primary_key=True, default=uuid.uuid4)
updated_at = models.DateTimeField(editable=False)
def __str__(self):
return self.title
def save(self, *args, **kwargs):
''' On save, update timestamps '''
if not self.created_at:
self.created_at = timezone.now()
self.updated_at = timezone.now()
return super(Analysis, self).save(*args, **kwargs)
class Meta:
db_table = "games"
И моя Match
модель:
import uuid
from django.db import models
from django.utils import timezone
from games.models import Game
class Match(models.Model):
game = models.ForeignKey(Game, on_delete=models.CASCADE)
created_at = models.DateTimeField(editable=False)
id = models.UUIDField(primary_key=True, default=uuid.uuid4)
updated_at = models.DateTimeField(editable=False)
def save(self, *args, **kwargs):
''' On save, update timestamps '''
if not self.created_at:
self.created_at = timezone.now()
self.updated_at = timezone.now()
return super(Match, self).save(*args, **kwargs)
class Meta:
db_table = "matches"
И моя GameSerializer
:
from rest_framework import serializers
from games.models import Game
from games.serializers import GameSerializer
class GameSerializer(serializers.ModelSerializer):
class Meta:
model = Game
fields = ('id', 'created_at', 'updated_at')
Я предполагаю, что мне нужно настроить GameSerializer
для правильной работы и отправить соответствующие данные.Как мне это сделать?