[英]How to order queryset by queryset in related model
在視圖中,我需要對項目進行排序,以便將具有票證分配給當前用戶的項目排在第一位。 我對如何執行此操作感到有些困惑。 Django的ORM是否可能? 任何幫助表示贊賞! 謝謝!
型號
class Project(TimeStampedModel):
title = models.CharField(max_length=200)
created_by = models.ForeignKey(settings.AUTH_USER_MODEL, null=True)
class Ticket(TimeStampedModel):
title = models.CharField(max_length=200)
description = models.TextField(blank=True)
project = models.ForeignKey(Project, related_name="tickets")
created_by = models.ForeignKey(
settings.AUTH_USER_MODEL, null=True, related_name="created_tickets")
assignees = RelatedSetField(
settings.AUTH_USER_MODEL, related_name="tickets")
您可以檢查是否有分配給當前用戶的用戶,先顯示這些用戶,然后將其彈出查詢集。 然后顯示查詢集的其余部分。
偽代碼:
tickets = Tickets.objects.all()
users_tickets = list()
for ticket in tickets:
if current_user in ticket.assignees:
users_tickets.append(ticket)
tickets.pop(ticket)
tickets = users_tickets + tickets
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.