在用Haystack 2.4.1(Django 1.8)享受我的第一个结果的同时,我不得不承认我很难学习它。这些文档有时是不完整的,有些功能只有几个例子。Haystack Faceted:__init __()得到了一个意想不到的关键字参数'facet_fields'
分面搜索就是其中之一。
我正在关注的documentation,并在url.py:
urlpatterns = patterns('haystack.views',
url(r'^$', FacetedSearchView(form_class=FacetedSearchForm, facet_fields=['author']), name='haystack_search'),
)
,我发现了以下错误:
TypeError at /tag_analytics/faceted_search/
__init__() got an unexpected keyword argument 'facet_fields'
貌似FacetSearchView不接受facet_fields
参数,这把我带到2.4.0版本,当正确的方式做到这一点是
FacetedSearchView(form_class=FacetedSearchForm, searchqueryset=sqs)
虽然我敢肯定,我的版本是2.4.1,我试过这个选项,并提前获得了
TypeError at /tag_analytics/faceted_search/
slice indices must be integers or None or have an __index__ method
感谢任何线索!
最好, 艾伦
我有一个“解决方案”,我怀疑是正确的,因为这意味着文档是完全错误的。无论如何,在url.py我用'FacetedSearchView.as_view(form_class)'从'haystack.views'导入FacetedSearchView'从'haystack.generic_views导入FacetedSearchView'和'FacetedSearchView(form_class = FacetedSearchForm,facet_fields = ['author']) = FacetedSearchForm,facet_fields = ['author'],template_name ='search.html',context_object_name ='page_object')'。它有效,但我仍然想要了解问题所在! –