Django查询数据库

时间:2017-09-21 23:05:19

标签: python django

这是我的答案模型,

trait Tagged[A] {
    def tag: A
}
trait TraitFoo[A, B <: Tagged[A]] {
    def doSomething(fooSeq: Seq[B]): Seq[A] = fooSeq.map(f => f.tag)
}

case class Foo(text: String, tag: Tag) extends Tagged[Tag] { }
object Foo extends TraitFoo[Tag, Foo] {
    def doSomethingElse() = { }
}

我想过滤掉过去24小时内收到最多喜欢的答案。我怎么能这样做呢?

谢谢你:)

1 个答案:

答案 0 :(得分:3)

你需要django聚合api。尝试:

head

现在你可以from datetime import * from django.db.models import Count last_24 = datetime.now() - timedelta(hours = 24) ans = Answer.objects.filter(timestamp__gte = last_24).annotate(counted_likes = Count('likes')).order_by('-counted_likes') 找出答案ans [0]有多少人喜欢,并且order_by term there向你保证这第一个元素的喜欢次数最多。

请参阅django docs中的汇总以获得进一步说明。