当我使用Haystack和ElasticSearch将帖子ID作为有效内容发送到端点(RESTful API)时,我正在尝试撰写类似的帖子:
original_post = Article.objects.get(id=pk) #pk is 2 for example
related_items = SearchQuerySet().more_like_this(original_post.title)
result = related_items[0].object.title
print(result)
这会引发错误:
AttributeError: 'str' object has no attribute '_meta'
我是Elastic Search的新手。我在做什么错了?
答案 0 :(得分:0)
related_items = SearchQuerySet().more_like_this(original_post)
请参见haystack docs中的函数定义:
SearchQuerySet.more_like_this(自己,model_instance)
因此,您应该将model_instance传递给more_like_this
而不是字符串。