【问题标题】:haystack SearchQueryResult object returns multiple objectshaystack SearchQueryResult 对象返回多个对象
【发布时间】:2013-06-03 22:25:27
【问题描述】:

我不明白为什么 pk=1 的 get() 会导致下面返回多个对象..

sqs = SearchQuerySet().more_like_this(self)

for obj in sqs:
      do something with obj.object # obj.object results in error

get() 返回了多个 MyModel —— 它返回了 4!查找参数为 {'pk': u'1'}

【问题讨论】:

  • 你能解释一下你到底在寻找什么,也许我们可以研究解决方案吗?

标签: django-haystack searchqueryset


【解决方案1】:

我不知道为什么,但我遇到了同样的问题,下面给了我MultipleObjectReturned 错误:

context['object_list'] = [result.object for result in results]


lib/python2.7/site-packages/haystack/models.py", line 80, in _get_object
self._object = self.searchindex.read_queryset().get(pk=self.pk)

我没有直接引用obj.object,而是使用pk

context['object_list'] = Entry.objects.filter(pk__in=[result.pk for result in results])

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-21
    • 2019-01-29
    • 2010-12-13
    • 1970-01-01
    相关资源
    最近更新 更多