我不明白为什么 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'}
我不明白为什么 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'}
我不知道为什么,但我遇到了同样的问题,以下给了我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])