Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Foo(models.Model):
- ...
- class UserFoo(models.Model):
- user = models.ForeignKey(User)
- foo = models.ForeignKey(Foo)
- ...
- class Meta:
- unique_together = ("user", "foo")
- foos = Foo.objects.raw("SELECT foo.* FROM foo LEFT OUTER JOIN userfoo ON (foo.id = userfoo.foo_id AND foo.user_id = %s)", [request.user.id])
- def userfoo_retriever(qs):
- userfoos = dict((i.pk, i) for i in UserFoo.objects.filter(foo__in=qs))
- for i in qs:
- i.userfoo = userfoos.get(i.pk, None)
- for foo in Foo.objects.filter(…).tranform(userfoo_retriever):
- print foo.userfoo
Add Comment
Please, Sign In to add comment