0

結果が返ってきなくて困っています。

これは私がこれまでに得たものです:

search_indexes.py

class CompanyIndex(SearchIndex):
    text = CharField(document=True, use_template=True)
    name = CharField(model_attr='name')
    sector = CharField(model_attr='sector')

    def get_model(self):
        return Company

    def index_queryset(self):
        return self.get_model().objects.all()

site.register(会社、CompanyIndex)

class CompanySearchForm(ModelSearchForm):
    name = forms.CharField(max_length=64, required=False)
    sector = forms.MultipleChoiceField(choices=SECTORS_CHOICES, required=False)

    def search(self):
        # First, store the SearchQuerySet received from other processing.
        sqs = super(CompanySearchForm, self).search()
        print "fgdgdfgdfgdfg"
        if self.is_valid():
            # Check to see if a start_date was chosen.
            if self.cleaned_data['name']:
                print "%s" % self.cleaned_data['name']
                sqs = sqs.filter(name__exact=self.cleaned_data['name'])

            # Check to see if an end_date was chosen.
            if self.cleaned_data['sector']:
                sqs = sqs.filter(sector__contains=self.cleaned_data['sector'])

        return sqs

および URL:

sqs = SearchQuerySet()
    url(r'^search/', SearchView(
    template='search/search.html',
    form_class=CompanySearchForm,
    searchqueryset=sqs,
), name='haystack_search'),

haystack ドキュメントのテンプレートを使用しています。結果が表示されません。

どんな助けにも感謝します

4

1 に答える 1

1

次の場所にテンプレートを作成する必要があります。

templates\search\indexes\APP_NAME\company_text.txt

CompanyIndex から検索可能なフィールドを表すもの

{{ object.text }}
{{ object.name }}
{{ object.sector }}

テンプレートに記述した内容は、search_index.py に存在するかどうかに関係なく、インデックスから検索されます。以下は、インデックスを作成するのに十分です。

 text = CharField(document=True, use_template=True) 
于 2012-12-11T09:44:09.740 に答える