Заставить Хейстек индексировать первую букву Чарфилда - PullRequest
0 голосов
/ 06 октября 2011

У меня есть модель с CharField ()

class MyModel(models.Model)
   field = models.CharField(...)

Как настроить Haystack для индексирования первой буквы этого поля в SearchIndex?

class MyIndex(SearchIndex):
   starts_with = CharFiled(?)

1 Ответ

0 голосов
/ 06 октября 2011

Я обнаружил, что в Haystack есть что-то вроде функций очистки форм Django, которые называются prepare.

Так что в моем случае, чтобы получить первую букву из поля, я могу сделать:

class MyIndex(SearchIndex): start_with = CharField ()

def prepare_starts_with(self, obj):
    return obj.field[:1]
...