Mercurial > public > sg101
annotate gpp/downloads/search_indexes.py @ 463:452835f4429f
Fixing #225; for some reason MySQL finds the user 'John' when searching for 'John ' (note trailing space). This doesn't happen on SQLite. This causes a NoReverseMatch when searching for 'John ' in the member search. The solution is to call strip() on the form field contents in the clean_username() method of the search form.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Sat, 09 Jul 2011 02:00:48 +0000 |
parents | 79240675b903 |
children | b910cc1460c8 |
rev | line source |
---|---|
bgneal@221 | 1 """Haystack search index for the downloads application.""" |
bgneal@221 | 2 from haystack.indexes import * |
bgneal@221 | 3 from haystack import site |
bgneal@392 | 4 from queued_search.indexes import QueuedSearchIndex |
bgneal@221 | 5 |
bgneal@221 | 6 from downloads.models import Download |
bgneal@221 | 7 |
bgneal@221 | 8 |
bgneal@392 | 9 class DownloadIndex(QueuedSearchIndex): |
bgneal@221 | 10 text = CharField(document=True, use_template=True) |
bgneal@221 | 11 author = CharField(model_attr='user') |
bgneal@221 | 12 pub_date = DateTimeField(model_attr='date_added') |
bgneal@221 | 13 |
bgneal@221 | 14 def get_queryset(self): |
bgneal@221 | 15 return Download.public_objects.all() |
bgneal@221 | 16 |
bgneal@277 | 17 def get_updated_field(self): |
bgneal@277 | 18 return 'update_date' |
bgneal@277 | 19 |
bgneal@221 | 20 |
bgneal@221 | 21 site.register(Download, DownloadIndex) |