错误:
/ stats / matches的AttributeError
尝试获取
players序列化程序中字段的值时出现AttributeErrorMatchSerializer。序列化程序字段的名称可能不正确,并且与Match实例上的任何属性或键都不匹配。原始异常文本为:“匹配”对象没有属性“玩家”。
楷模:
每个人Match都有10位玩家。
class Match(models.Model):
tournament = models.ForeignKey(Tournament, blank=True)
mid = models.CharField(primary_key=True, max_length=255)
mlength = models.CharField(max_length=255)
win_rad = models.BooleanField(default=True)
class Player(models.Model):
match = models.ForeignKey(Match, on_delete=models.CASCADE)
playerid = models.CharField(max_length=255, default='novalue')
# There is also a Meta class that defines unique_together but its omitted for clarity.
Run Code Online (Sandbox Code Playgroud)
序列化器:
class PlayerSerializer(serializers.ModelSerializer):
class Meta:
model = Player
fields = "__all__"
class MatchSerializer(serializers.ModelSerializer):
players = PlayerSerializer(many=True)
class Meta:
model = Match
fields = …Run Code Online (Sandbox Code Playgroud)