django关键字不能是表达式

bbr*_*oke 11 django django-models django-queryset

我正在尝试创建一个查询,我得到一个筛选列表.

我调用查询的模型是:

class WorkoutRecord(models.Model):

    challenge = models.ForeignKey(Challenge)

    workout_email_sent = models.DateTimeField(default=datetime.now)

    status = models.IntegerField(default=1) 
Run Code Online (Sandbox Code Playgroud)

我的查询是:

L = WorkoutRecord.objects.filter(status = 1, challenge.user = request.user, workout_email_sent__lt = today)
Run Code Online (Sandbox Code Playgroud)

我得到的错误消息是:

关键字不能是表达式

我知道问题是在challenge.user = request.user查询的一部分,但我不知道如何编写查询,以便它ForeignKey正确地过滤.

Pet*_*per 26

使用__跟踪查询集中的外键关系:

L = WorkoutRecord.objects.filter(status=1, challenge__user=request.user, workout_email_sent__lt=today)
Run Code Online (Sandbox Code Playgroud)