Hi All,
I have the following models:
class Event(models.Model):
name = models.CharField(max_length=100)
price = models.DecimalField(max_digits=4,decimal_places=2)
class Ticket(models.Model):
number = models.IntegerField(db_index=True)
event = models.ForeignKey(Event)
class TicketStatus(models.Model):
ticket = models.ForeignKey(Ticket)
transaction = models.ForeignKey(Transaction,related_name='actions')
timestamp = models.DateTimeField()
owner = models.ForeignKey(User)
status =
models.CharField(max_length=max_len(STATUSES),choices=STATUSES)
active = models.BooleanField()
I'm trying to build a drop-down filtered list of tickets, showing their
current status. The dropdowns allow filtering by owner and by event.
Here's my code:
@login_required
def tickets(request):
events = Event.objects.all()
event = Event.objects.get(id=request.GET.get('event',events[0].id))
if request.user.is_staff:
user_id = request.GET.get('user',request.user.id)
users = User.objects.all()
else:
user_id = request.user.id
users = [user]
queryset = TicketStatus.objects.filter(active=True)
if user_id:
queryset = queryset.filter(owner=User.objects.get(id=user_id))
queryset = queryset.filter(ticket__event=event)
return list_detail.object_list(
request,
queryset =
queryset.order_by('ticket__number').select_related('Ticket'),
template_name = 'tickets_list.html',
paginate_by = 50,
extra_context = dict(
events = events,
current_event_id = event.id,
users = users,
current_user_id = user_id
)
)
As soon as I added the:
queryset = queryset.filter(ticket__event=event)
...line, evaluating the queryset grinds to a halt.
Why is that? How can I make it fast?
cheers,
Chris
--
Simplistix - Content Management, Batch Processing & Python Consulting
- http://www.simplistix.co.uk
--
You received this message because you are subscribed to the Google Groups "Django
users" group.
To post to this group, send email to django-us...@googlegroups.com.
To unsubscribe from this group, send email to
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/django-users?hl=en.