view gpp/weblinks/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
line wrap: on
line source
"""Haystack search index for the weblinks application."""
from haystack.indexes import *
from haystack import site
from queued_search.indexes import QueuedSearchIndex

from weblinks.models import Link


class LinkIndex(QueuedSearchIndex):
    text = CharField(document=True, use_template=True)
    author = CharField(model_attr='user')
    pub_date = DateTimeField(model_attr='date_added')

    def get_queryset(self):
        return Link.public_objects.all()

    def get_updated_field(self):
        return 'update_date'


site.register(Link, LinkIndex)