【问题标题】:Can we use django filter with a variable?我们可以使用带有变量的 django 过滤器吗?
【发布时间】:2021-12-31 10:27:43
【问题描述】:

这是我的代码:

模型.py

class Members(models.Model):
      first_name = models.CharField(max_length=100)
      last_name = models.CharField(max_length=100) 
      username = models.CharField(max_length=100)
      email = models.EmailField()
      phone = models.CharField(max_length=14)

Views.py(无法返回任何值)

def employeeView(request):
    member = User.username
    members = Members.objects.filter(username= member)
    return render(request,'members/user_profile.html', {'members': members})

Views.py(正确返回)

def employeeView(request):
    members = Members.objects.filter(username= 'mahesh')
    return render(request,'members/user_profile.html', {'members': members})

我试图通过传递登录用户的用户名过滤 Members.obejcts 来获取数据。它在硬编码时工作,但不是通过传递变量。有什么解决办法吗?

【问题讨论】:

  • 你试过调试,看看User.username到底是什么?通常登录用户是request.user,而不是User. I would think that User.username`是类属性,不是实例属性。
  • 谢谢@9769953,成功了。

标签: python django variables filter hardcode


【解决方案1】:

试试这个,member = request.user.username

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-04
    • 2016-05-07
    • 1970-01-01
    • 2011-06-10
    • 1970-01-01
    • 2014-06-30
    • 2020-01-05
    • 2011-07-10
    相关资源
    最近更新 更多