Hey fellow djanglers,

I am trying to construct a view that's a bit complicated, and
struggling to create the proper queryset. Hopefully some of you have
done something like this before, or otherwise have some ideas on how
to tackle it efficiently.

Imagine we have something like these models:

class Category(models.Model):
        name = models.CharField(max_length=100)
        slug = models.SlugField(unique=True)

class Watching(models.Model):
        user = models.ForeignKey(User)
        category = models.ForeignKey(Category)
        priority = models.IntegerField()

class Item(models.Model):
        name = models.CharField(max_length=100)
        description = models.TextField(blank=True)
        categories = models.ManyToManyField(Category)

What I want to do is create a view at "http://example.com/watchlist/";
that will show all *items* belonging to all categories which the
logged-in user is "watching." So, the queryset needs to be a set of
Item objects, but needs to follow a conditional chain like this: Item -
> Category -> Watching -> User -> "ME." This involves a mix of foreign-
key and many-to-many relationships, since users can be watching
multiple categories, and items can also belong to multiple categories
(which can, in turn, have multiple items). It should also deal with
duplicates in case an item belongs to multiple categories that are all
being watched by the user. (Hopefully that all makes sense!)

Anyway, this particular kind of queryset construction is a little
unclear to me from the Django DB API documentation.

Any ideas?

--B

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to