我有一个家庭作业模型,该模型要根据date(date_view)进行过滤以显示作业。看起来像这样-
作业模型
class Homework(models.Model):
hw_id = models.CharField(unique=True, max_length=50)
homework = models.TextField()
subject = models.ForeignKey(Subject, on_delete=models.CASCADE)
class_id = models.ForeignKey(Classes, on_delete=models.CASCADE)
date_added = models.DateTimeField(auto_now_add=True)
date_updated = models.DateTimeField(auto_now=True)
date_view = models.DateTimeField(default=datetime.now())
但是当我尝试像这样过滤时-
hw = Homework.objects.filter(class_id=class_id).filter(date_view__gte='homework__date_added')
我收到此错误-
['“homework__date_added” value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ] format.']
我认为我以错误的方式过滤了数据。但是我应该如何过滤数据?
您可以使用F
对象[Django-doc]引用字段:
from django.db.models import F
hw = Homework.objects.filter(
class_id=class_id,
date_view__gte=F('date_added')
)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句