tags:

views:

80

answers:

1

I have two models in Django: groups and entries. Groups has a many-to-many field that connects it to entries. I want to select all entries that have a group (as not all do!) and be able to access their group.title field.

I've tried something along the lines of:

t = Entries.objects.select_related().exclude(group=None)

and while this returns all entries that have groups, I can't do t[0].groups to get the title. Any ideas on how this could be done?

Edit: more info

When ever I use Django's shell to inspect what is returned in t (in this example), t[0].group does not exist. The only way I can access this is via t[0].group_set.all()[0].title, which seems inefficient and like I'm doing something incorrectly.

+2  A: 

You don't show the model code, so I can't be sure, but instead of t[0].groups, I think you want:

for g in t[0].groups.all():
    print g.title
Ned Batchelder