2016-05-05 7 views
0

Haystack 2.4.1(Django 1.9)Django-Haystack Faceting初期設定

ファセット検索で問題があります。

私はthis最近のスタックオーバーフローの回答からの例に従おうとしましたが、まだ動作していません。

Searchapp

#search/views.py 
from django.shortcuts import render 
from haystack.forms import FacetedSearchForm 
from haystack.generic_views import FacetedSearchView as BaseFacetedSearchView 

class FacetedSearchView(BaseFacetedSearchView): 
     form_class = FacetedSearchForm 
     facet_fields = ['categories'] 
    template_name = 'search/search.html' 
    context_object_name = 'page_object' 

#urls.py 
from haystack.forms import FacetedSearchForm 
from search.views import FacetedSearchView 
from haystack.query import SearchQuerySet 

urlpatterns += patterns('haystack.views', 
    url(r'^search/', FacetedSearchView.as_view(), name='haystack_search'), 
) 

から私はあなたたちが提供できる任意の助けをいただければと思います。私はこの1つの上で私の知恵の終わりです。

私はHaystackのドキュメントのテンプレートを使用しています。

{% if query %} 
    <!-- Begin faceting. --> 
    <h2>By Category</h2> 

    {{ self.get_facets }} 

    <div> 
     <dl> 
      {% if facets.fields.category %} 
       <dt>category</dt> 
       {# Provide only the top 5 categories #} 
       {% for category in facets.fields.categories|slice:":5" %} 
        <dd><a href="{{ request.get_full_path }}&amp;selected_facets=category_exact:{{ category.0|urlencode }}">{{ category.0 }}</a> ({{ category.1 }})</dd> 
       {% endfor %} 
      {% else %} 
       <p>No category facets.</p> 
      {% endif %} 
     </dl> 
    </div> 
    <!-- End faceting --> 

    <!-- Display results... --> 
    {% for result in page_object %} 
     <div class="search_result"> 
      <h3><a href="{{ result.object.get_absolute_url }}">{{ result.object.title }}</a></h3> 

      <p>{{ result.object.body|truncatewords:80 }}</p> 
     </div> 
    {% empty %} 
     <p>Sorry, no results found.</p> 
    {% endfor %} 

{% endif %} 
+0

[この質問](http://stackoverflow.com/questions/36958377/haystack-faceted-init-got-an-unexpected-keyword-argument-face-fields/)の手順1で参照した問題に回答しました。 36962796#36962796)。 Haystackのマニュアルは壊れています。 – solarissmoke

+0

応答solarissmokeに感謝します。私はあなたの変更に従おうとしましたが、まだ問題がありました。どんな助けもありがとう。 – jake

+0

問題は何ですか?エラーが表示されたり、ファセットが表示されませんか?検索インデックスを再構築しましたか? – solarissmoke

答えて

0

ページは文脈上ではありません。 object_listを直接使用してオブジェクトにアクセスします。それ以外の場合は

、あなたがウェブサイトに沿って、公式のチュートリアルをフォローしたい場合は、ちょうどあなたのurls.pyでこれを使用します。

url(r'^search/', FacetedSearchView(form_class=FacetedSearchForm, searchqueryset = SearchQuerySet().facet('author')), name='haystack_search) 

の代わり:

url(r'^search/', FacetedSearchView(form_class=FacetedSearchForm, selected_facets=['author'] , name='haystack_search). 

を希望これはsombody :)

を支援
関連する問題