除了official haystack web site上有关如何使用基于类的视图的教程或示例之外,还有其他任何教程或示例吗?
我真正需要的是能够在用户进行搜索时显示来自多个模型的结果,并且根据我的理解,我将需要创建自己的视图并从SearchView继承,但官方网站上的示例还不够对我来说。
答案 0 :(得分:1)
在这些情况下,最好的学习方法是探索源代码并找到它们的工作方式,然后你可以覆盖你想要的方法
答案 1 :(得分:0)
Haystack中的默认视图不正确,或者我应该说典型的基于类的视图。据我所知,它们是Haystack独有的。
如果说,将它们子类化并不太难,只需执行以下操作:
class CustomSearchView(FacetedSearchView):
def create_response(self):
if self.request.method == 'POST':
....
if self.request.method == 'GET':
....
return super(CustomSearchView, self).create_response()
def extra_context(self):
# add your context
如您所见,它们位于基于类的视图和基于函数的视图之间。
在您的情况下,您可能需要为所有模型创建SearchIndexes,然后您需要做的就是在urls.py中正确获取初始查询