Различный в отношении многих ко многим - PullRequest
0 голосов
/ 29 сентября 2010
class Order(models.Model):
    ...

class OrderItem(models.Model)
    order = models.ForeignKey(Order)
    product = models.ForeignKey(Product)
    quantity = models.PositiveIntegerField()

Что мне нужно сделать, это получить заказ (ы), который имеет только один элемент заказа.Как я могу написать это, используя объекты QuerySet (без написания SQL)?

1 Ответ

3 голосов
/ 29 сентября 2010

Самый простой способ сделать это - использовать агрегацию Count :

from django.db.models import Count
Order.objects.annotate(count = Count('orderitem__id')).filter(count = 1)
...