【问题标题】:Django: Filtering the QuestionsDjango:过滤问题
【发布时间】:2017-09-25 07:06:58
【问题描述】:

这是模型,

class Question(models.Model):
    timestamp = models.DateTimeField(auto_now=False, auto_now_add=True)
    ....

class Answer(models.Model):
    question = models.ForeignKey(Question)
    timestamp = models.DateTimeField(auto_now=False, auto_now_add=True)

如何过滤掉过去 24 小时内收到答案的问题。我怎样才能过滤掉它们?

请帮助我。谢谢!

【问题讨论】:

    标签: python django


    【解决方案1】:

    您可以执行以下操作:

    from django.utils import timezone
    yesterday = timezone.now() - timezone.timedelta(hours=24)
    recent = Question.objects.filter(answer__timestamp__gte=yesterday).distinct()  # distinct might be necessary
    

    过滤器 kwarg 中的 answer 是 - 按此顺序(如果提供) - related_query_namerelated_name 或小写型号名称。

    【讨论】:

    • 先生,有没有什么办法可以让我按照过去 24 小时内给出的答案数量来排序这些问题?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-05
    • 2020-03-22
    • 2014-06-17
    • 1970-01-01
    相关资源
    最近更新 更多