Hi, I've been having some trouble with filtering the related models of a 
queryset,
and I'm not sure if I'm approaching this wrong or if Django can't actually 
do it.

Basically I have some models with ManyToMany relationships, like:

*class User(models.Model):
    name = models.CharField()
class Product(models.Model):
    name = models.CharField()
class Order(models.Model):
    user = models.ForeignKey(User)*

*    status = models.CharField()*

*    products = models.ManyToManyField(Product, through='OrderProduct')
class OrderProduct(models.Model):
    product = models.ForeignKey(Product)
    order = models.ForeignKey(Order)
    amount = models.IntegerField()*


And I want to get all the products bought by User1, so I'd do something like

*Product.objects.filter(order__status='completed', order__user=User1)*

Which then returns just Product1, but now I want the amount the user bought,

but it seems wrong to make another query like:

*Product1.orderproduct_set.filter(order__user=User1)*

And hit the database again to get data my first query can already bring me...


So what I want to know is, based on a queryset that filters by related models,

is there a way to get just the actual related models of my result?


Thanks,

Gabriel

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/django-users?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to