Mercurial > public > sg101
annotate bio/search_indexes.py @ 791:0ca691cccf8d
Utilize select_related() for user & user profiles.
This commit also removes the caching of the avatar URL in the
avatar template tag. This is because we are now using select_related,
so we already have the profile & avatar when we get to the tag.
Thus we don't need to waste time querying the cache.
Removed an apparently unused member map template as well.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Fri, 23 May 2014 21:52:41 -0500 |
parents | ad53d929281a |
children | cf9918328c64 |
rev | line source |
---|---|
bgneal@223 | 1 """Haystack search index for the bio application.""" |
bgneal@753 | 2 from haystack import indexes |
bgneal@223 | 3 |
bgneal@223 | 4 from bio.models import UserProfile |
bgneal@223 | 5 |
bgneal@223 | 6 |
bgneal@753 | 7 class UserProfileIndex(indexes.SearchIndex, indexes.Indexable): |
bgneal@753 | 8 text = indexes.CharField(document=True, use_template=True) |
bgneal@753 | 9 author = indexes.CharField(model_attr='user') |
bgneal@223 | 10 |
bgneal@753 | 11 def get_model(self): |
bgneal@753 | 12 return UserProfile |
bgneal@753 | 13 |
bgneal@753 | 14 def index_queryset(self, using=None): |
bgneal@223 | 15 return UserProfile.objects.filter(user__is_active=True) |
bgneal@223 | 16 |
bgneal@277 | 17 def get_updated_field(self): |
bgneal@277 | 18 return 'update_date' |