Python - 检查用户是否在团队中

标签 python django

我有一个存储团队和成员的模型。我想检查请求的用户是否在这个团队中。我该怎么做?

型号

class TeamPlayer(models.Model):
    team = models.ForeignKey(Team, related_name='players', on_delete=models.CASCADE)
    player = models.OneToOneField(User, related_name='player', on_delete=models.CASCADE)
    approved = models.BooleanField(default=False)

模板

{% if request.user in object.players.all %}
      <a href="{% url 'teams:leave' pk=object.id %}" class="btn btn-warning">Leave</a>
{% else %}
      <a href="{% url 'teams:join' pk=object.id %}" class="btn btn-success">Join</a>
{% endif %}

View 就是简单的DetailView

最佳答案

如果您想在模板中这样做,只需像这样使用 teamplayer_set:

{% if request.user in object.teamplayer_set.all %}

关于Python - 检查用户是否在团队中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48711725/

相关文章:

python - 让MATLAB R2019b使用Python3.6

python - Chaco 图中的小刻度?

python - 如果满足两个条件则打印出来

Django 表单集单元测试

python - 覆盖 django 管理登陆页面并将变量传递给模板

python - 使用 lxml 获取值

Python:从二进制转换为字符串

python - 在Django 3上变成了available_attrs的是什么?

javascript - 将列表从 View 上下文传递到模板并将其分配为模板中的数组

python - def form_valid 用于 Django Rest 框架