在另一个模型中的条件下从一个模型中获取所有项目

Get all items from one model on condition that is in other model

您好,我正在查看堆栈,但答案令人困惑或无法正常工作,您可以查看我的模型,我如何才能获得用户制作的所有 OrderItems,这些订单中的 complete=True。

class Order(models.Model):
    customer        = models.ForeignKey(Customer, on_delete=models.SET_NULL, blank=True, null=True)
    date_oredred    = models.DateField(auto_now_add=True)
    complete        = models.BooleanField(default=False, null=True, blank=True)
    transaction_id  = models.CharField(max_length=200, null=True)

class OrderItem(models.Model):
    product     = models.ForeignKey(Product, on_delete=models.SET_NULL, blank=True, null=True)
    order       = models.ForeignKey(Order, on_delete=models.SET_NULL, blank=True, null=True)
    quantity    = models.IntegerField(default=0, null=True, blank=True)
    date_added  = models.DateTimeField(auto_now_add=True)
    transaction_id  = models.CharField(max_length=200, null=True)

使用以下内容:

qs = OrderItem.objects.filter(order__complete=True)

为特定客户获取:

qs.filter(order__customer=specific_customer)