【问题标题】:Many To Many field and request.user not working多对多字段和 request.user 不工作
【发布时间】:2020-10-12 15:34:52
【问题描述】:

我正在尝试做一个非常简单的请求:

我的模型

class LogBook(models.Model):
name = models.CharField(
    max_length=50, verbose_name="Nom du registre de maintenance"
)
members = models.ManyToManyField(User, verbose_name="Utilisateurs", related_name = 'member')

现在,如果我在我的观点中尝试:

if request.user == log.members

要检查用户是否属于 LogBook,它不会拒绝访问,知道吗?

【问题讨论】:

    标签: python python-3.x django django-models django-views


    【解决方案1】:

    log.members 是一个manager,它不是单个用户,甚至也不是QuerySet。您可以通过以下方式检查此用户是否存在:

    if request.user in log.members.all():
        # …

    .filter(…):

    if log.members.filter(pk=request.user.pk).exists():
        # …

    【讨论】:

      猜你喜欢
      • 2014-08-18
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多