戻り値の異なるmodel_names(クラス)に基づいて結果をファセットしたいとします。これを行う簡単な方法はありますか?モデルタイプのDjango Haystackファセッティング
5
A
答えて
5
SearchIndex
フィールドにこの情報を追加しましたか?例えば。
class NoteIndex(SearchIndex, indexes.Indexable):
title = CharField(model_attr='title')
facet_model_name = CharField(faceted=True)
def get_model(self):
return Note
def prepare_facet_model_name(self, obj):
return "note"
class MemoIndex(SearchIndex, indexes.Indexable):
title = CharField(model_attr='title')
facet_model_name = CharField(faceted=True)
def get_model(self):
return Memo
def prepare_facet_model_name(self, obj):
return "memo"
このように、検索インデックスごとに異なる文字列を返すだけです。また、mixinを作成し、get_model
によって返されたモデルの名前を返すこともできます。
SearchIndex
の定義にこのフィールドを追加したと仮定すると、結果はchain the facet
methodになります。
results = form.search().facet('facet_model_name')
今facet_counts
方法は、この場合には、各ファセット値の結果の多面的なフィールドとカウントはモデル名を辞書を返します。
Haystackによって追加されたフィールドであるmodel_name
との競合を回避するため、このフィールドは冗長に表示されています。それは面倒ではなく、重複すると矛盾が生じるかどうかはわかりません。
0
The Docsこれは本当に良いウォークスルーを持っています。
最小あなたは必要があります
- はあなたの
model_names
フィールドののparamsにfaceted=True
を追加することです。 - スキーマとインデックスを再構築します。
.facet('model_names')
を検索クエリセットに追加してください。
さらに詳しい解説でより完全な答えが得られます。
0
あなただけのモデルタイプでフィルタリングする場合は、あなたは一例でより多くの、この質問をしてください説明できるModelSearchForm
関連する問題
- 1. Django HaystackとXapian
- 2. Haystack django SearchQuerySet
- 3. Django haystack、whoosh search、boost
- 4. django haystack SearchField(インデックス付きFalse)
- 5. Django Haystackカスタム検索フォーム
- 6. Django-Haystack Faceting初期設定
- 7. Django mod_wsgiとhaystack =エラー500
- 8. Django haystack with elasticsearch、indexing issue
- 9. Django Haystack:オブジェクトプロパティによるフィルタリング
- 10. Django/Haystackエラー:elasticsearch.exceptions.RequestError:TransportError(400、 'parsing_exception'、...)
- 11. モデルタイプ
- 12. Django Haystackの返品関連の返品
- 13. Django-Haystack + Whoosh - 空のインデックスの後にrebuild_index
- 14. django-haystackとSolrでのスペルの提案
- 15. ハイライトテンプレートタグ付きの安全なフィルタdjango-haystack
- 16. Django Haystack Solr:HTTP ERROR 500アクセスする/ solr/admin/
- 17. Django Haystackオートコンプリートjquery書式設定
- 18. Django-Haystack elasticsearch設定in cloud 9
- 19. Django haystack elasticsearchオートコンプリートが動作しない
- 20. Django Haystackで再構築する方法
- 21. 外部キーIDによるフィルタリングDjango haystack
- 22. django-haystackに固定クエリを渡す
- 23. Djangoクエリセットのモデルタイプをチェックする最良の方法
- 24. Django:複数の子モデルタイプを持つ親モデル
- 25. モデルタイプの比較Laravel
- 26. Unicode errror from Haystack indexing
- 27. taggitとhaystack + whoosh
- 28. Django Haystackからの生の結果の取得
- 29. djangoの設定でelasticsearch 5.0のhaystackを設定するには?
- 30. Django Haystack:リスト内の複数の項目に基づくフィルタクエリ。
を使用することができますか? – soField