我正在尝试在查询中“加入”这 4 个模型。我的出发点是 Team.id。我正在尝试将 SkillRecord 纳入结果,但我完全迷失了。
class Team(models.Model):
user = models.ForeignKey(User)
id = models.IntegerField(primary_key=True, null=False, unique=True)
...
class Player(models.Model):
id = models.IntegerField(primary_key=True)
...
class Transfer(models.Model):
player = models.ForeignKey(Player)
seller = models.ForeignKey(Team, related_name='transfer_seller')
buyer = models.ForeignKey(Team, related_name='transfer_buyer')
date = models.DateTimeField()
...
class SkillRecord(models.Model):
player = models.ForeignKey(Player)
date = models.DateTimeField(default=datetime.datetime.now)
...
到目前为止,这是我谦虚的方法
def list_players(request, teamid):
team = get_object_or_404(Team, id=teamid)
players_transfers = Transfer.objects.filter(buyer=team).select_related('player')
我不太确定将 SkillRecord 模型引入游戏的下一步是什么。我似乎缺乏这类问题的基本要点,所以我想我需要戳一下。
另外,请随时给我更多的想法如何做到这一点,我或多或少地确定我也可以使用 manytomanyfields 左右来解决整个转移问题。
非常感谢