繁体   English   中英

django 按字段排序的查询集

[英]django queryset sorting by fields

我有这个 model:

class ProgrammingQuestionAnswer(models.Model):
    programming_question = models.ForeignKey(ProgrammingQuestion, on_delete=models.CASCADE, related_name='programming_question_a', null=True, blank=True)
    time = models.DateTimeField(default=timezone.now)
    score = models.IntegerField(null=True, blank=True, default=0)
    user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='writer_answer_programming_question', null=True, blank=True)
    accept = models.BooleanField(default=False)
    file = models.FileField(upload_to=content_file_name)
    result = models.TextField(null=True, blank=True)
    file_name = models.CharField(max_length=500, null=True, blank=True)
    max_score = models.IntegerField(null=True, blank=True, default=0)

我想写一个查询来获取解决更多问题的用户(有更多的接受=真)和那些相等的按时间排序(时间字段)谢谢

尝试

accepted = Q( 'writer_answer_programming_question__accept=True')

User.objects.all.annotate(
    accepted_count = Count('writer_answer_programming_question', filter = accepted    
    ).order_by('accepted_count', 'time'
    )
    

文档: 聚合函数过滤注释

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM