Another approach would be to add a method to your events model. Name it something like "current_occurrences" and have it return the filtered occurrences. Ex:
class event( models.Model ): ... def current_occurrences( self ): return self.occurrence_set.filter( date__gte=datetime.datetime.today() ) Then you would change your template to {% for occurrence in event.current_occurences %} That should offer a little better performance since you wouldn't be pulling the entire occurrence set for each event. If performance is a major factor, investigate writing a custom model manager for your events model. That might be the best option for retrieving the joined set of events with current occurrences in one fell swoop in a nice abstracted manner. -Brian On Jul 1, 10:12 am, Brian Luft <[EMAIL PROTECTED]> wrote: > Ok, you are asking for a list of events that have occurences on or > after today's date. Then with each event instance you are asking for > ALL occurence instances (event.occurrence_set.all). ALL means EVERY > occurence associated with that event object. You haven't done > anything to filter out occurrences based on date in that step. > > -Brian > > On Jul 1, 9:51 am, Brandon Taylor <[EMAIL PROTECTED]> wrote: > > > Hi everyone, > > > I have Events and Occurrences of an Event. Occurrence contains a > > foreign_key for the Event. > > In my template, I need to display the Event and Occurrences as such: > > > Event Title One > > June 1, 2008 [times] > > July 23, 2008 [times] > > > Event Title Two > > August 25, 2008 [times] > > September 1, 2008 [times] > > > But, I only want to display dates that are greater than, or equal to > > today. In my view, I am selecting Events as such: > > > events_list = > > events.filter(occurrence__date__gte=datetime.datetime.today()) > > > Here's my template code: > > <ul> > > {% for event in events_list %} > > <li>{{ event.title }} > > {% for occurrence in event.occurrence_set.all %} > > <ul> > > <li> > > {{ occurrence.date }} > > </li> > > </ul> > > {% endfor %} > > </li> > > {% endfor %} > > </ul> > > > Which is showing ALL of the occurrences, not just the ones with a date > > greater than today. Given the sample data set above, it shouldn't > > display the event for June. Can someone please help me out with this? > > I'd really appreciate some advice. > > > TIA, > > Brandon --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---