【问题标题】:Learning multi tables joining info django学习多表加入信息 django
【发布时间】:2017-08-10 22:39:30
【问题描述】:

虽然我发现这篇文章 Django views.py Version of SQL Join with Multi Table Query 很有帮助。它似乎对我理解连接表没有帮助。我早些时候在一个问题上得到了帮助,我想我明白了。我正在尝试在波士顿企鹅队做以下表演(当前)球员。

我目前尝试提取的代码是

Player.objects.filter(team__all_teams__contains='boston', player__curr_team__contains="Penguins")

通过推理,无论如何都会将我置于模型的 Player.objects 中,并且应该从我的团队中过滤掉所有与波士顿有关的球队,然后应该为该球队拉出所有当前球员。

比仅仅给我一个答案更好的是一个视频或文档的链接,可以更好地解释这一点,这样我就可以更好地学习它以了解呼叫功能。

Models.py

from django.db import models

class League(models.Model):
    name = models.CharField(max_length=50)
    sport = models.CharField(max_length=15)
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)

class Team(models.Model):
    location = models.CharField(max_length=50)
    team_name = models.CharField(max_length=50)
    league = models.ForeignKey(League, related_name="teams")

class Player(models.Model):
    first_name = models.CharField(max_length=15)
    last_name = models.CharField(max_length=15)
    curr_team = models.ForeignKey(Team, related_name="curr_players")
    all_teams = models.ManyToManyField(Team, related_name="all_players")

views.py  only line i need help with rest works fine if i take out that line

"bostonp" : Player.objects.filter(team__all_teams__contains='boston', player__curr_team__contains="Penguins") ,


index.html   only section that doesnt work take it out and it works

<h5>Question 2</h5>
         {% for whatever in bostonp %}
        <li>{{whatever.team_name}}</li>
        {% endfor %}
        </ol>

【问题讨论】:

    标签: python mysql django


    【解决方案1】:

    试试这个(这将获取player 实例):

    bostonp = Player.objects.filter(curr_team__team_name__contains='Penguins')
    

    然后在你的模板中:

    {% for player in bostonp %}
        <li>{{ player.first_name }} {{ player.last_name }}</li>
    {% endfor %}
    

    【讨论】:

    • {% for what in bostonp %}
    • {{whatever.curr_team}}
    • {% endfor %} 应该把它拉到 html 中不应该吗?
  • 没有相同的问题不会提取 html 的信息我认为您的代码可以正确查看但 html 不会提取信息
  • 猜你喜欢
    相关资源
    最近更新 更多
    热门标签