Передача запроса методу в классе Haystack Index в Django - PullRequest
0 голосов
/ 29 февраля 2020

Я пытаюсь использовать информацию о местоположении пользователя, чтобы отфильтровать запрос поиска в стоге сена. Цель - показать результаты поиска магазинов рядом с пользователем. Проблема в том, что я не знаю, как передать запрос в индекс стога сена, чтобы запустить мою функцию get_or_set_location (self.request) . Возможно ли это?

class StoreIndex(request, indexes.SearchIndex, indexes.Indexable):
    text = indexes.EdgeNgramField(
    document=True, use_template=True,
    template_name='/app/templates/search/item_text.txt')
    # /templates/search/item_text.txt

    business_name = indexes.EdgeNgramField(model_attr='business_name')
    description = indexes.EdgeNgramField(model_attr="description", null=True)
    category = indexes.CharField(model_attr='category')
    city = indexes.CharField(model_attr='city')
    updated_at = indexes.DateTimeField(model_attr='updated_at')

    # for auto complete
    content_auto = indexes.EdgeNgramField(model_attr='business_name')

    # Spelling suggestions
    suggestions = indexes.FacetCharField()

    def get_model(self):
        return Store

    #This is where I need to call request for the users location method.
    def index_queryset(self, using=None):
        city_state = get_or_set_location(self.request)
        user_location = city_state["user_location"]
        return self.get_model().objects.annotate(distance = Distance("location", user_location)).order_by("distance").filter(status=2)[0:8]

Значение исключения: у объекта 'StoreIndex' нет атрибута 'request'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...