【问题标题】:haystack SearchQuerySet() is returning list instead of SearchQuerySet objecthaystack SearchQuerySet() 正在返回列表而不是 SearchQuerySet 对象
【发布时间】:2015-12-13 08:00:53
【问题描述】:

这是我的 get_queryset(): 视图中的方法

    def get_queryset(self):
       #by here the search query is getting executed
        self.vendor_filter=self.request.GET.get('select_vendor', 'all')
        self.search_query=self.request.GET.get('q', "")
        self.sort_by=self.request.GET.get('sort_by', "relevance")
        queryset=SearchQuerySet().all()[:50]
        return queryset

此方法抛出'list' object has no attribute 'all' 错误。但是我在 django shell 中运行了这个 SearchQuerySet().all() 它返回了正确的结果。 .

这是一个非常烦人的问题。我不知道是什么错误?,我正在使用 whoosh 和 django-haystack 搜索。

【问题讨论】:

    标签: django django-haystack


    【解决方案1】:

    我找到了原因,代码queryset=SearchQuerySet().all()[:50] 将 SearchQuerySet 对象转换为列表。我将其更改为 queryset=SearchQuerySet().all() 现在它按预期工作。我花了一整天的时间才弄清楚。但我仍然不知道为什么它在没有抛出异常或错误的情况下这样做。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-13
      • 1970-01-01
      • 1970-01-01
      • 2015-06-14
      相关资源
      最近更新 更多