問題タブ [searchqueryset]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
194 参照

django-haystack - haystack SearchQueryResult オブジェクトが複数のオブジェクトを返す

get() で pk=1 を実行すると、以下に複数のオブジェクトが返される理由がわかりません..

get() は複数の MyModel を返しました -- 4 を返しました! ルックアップ パラメータは {'pk': u'1'} でした

0 投票する
1 に答える
1058 参照

python - 特定のモデルと ID に基づいて SearchQuerySet の結果をフィルタリングするにはどうすればよいですか

これは私が検索したいモデルです

これは、結果を準備するために使用したいビューです

私が望むのは、結果がモデル (itemType) と itemType の ID (itemtype_id) に基づいていることです。 これら 2 つのフィルター

を組み合わせる方法がわかりません。 助けてくれてありがとう

0 投票する
1 に答える
2475 参照

python - Django Haystack フィールドの個別の値

QuerySetDjango Haystack + Elasticsearch + Django REST Framework を使用して小さな検索エンジンを構築しており、Djangoのdistinctメソッドの動作を再現しようとしています。

私のインデックスは次のようになります。

私ができるようにしたいのは、次のとおりです。

ただ、Haystack'sにはメソッドSearchQuerySetがないので、なんだか迷ってしまいます。distinctフィールドをファセットし、返された のリストを使用して Django にクエリを実行しようとしましitem_idたが、これにより Elasticsearch のパフォーマンスが低下し、Elasticsearch の並べ替え機能も使用できなくなります。

何かご意見は?

編集:

サンプルデータ:

サンプルデータ:

ご覧のとおり、同じアイテムに対して複数の VendorItem がありますが、検索するときは、アイテムごとに最大で 1 つの結果のみを取得したいと考えています。したがって、item_id列を一意/個別にする必要があります。

列でファセットを作成してからitem_id、次のクエリを実行してみました。

ここでの主な問題は、結果が 100 項目に制限されており、haystack でソートできないことです。

0 投票する
1 に答える
3225 参照

django - django-haystack SearchQuerySet を使用して結果をフィルタリングする方法は?

Django アプリケーションで django-haystack + whoosh を使用しようとしています。私のインデックスクラスは次のようになります

私のモデルは次のようになります。

私のテンプレートでは、ajax 検索フィールドを使用して Article モデルをクエリし、同じページに結果を返しています。基本的に、ajax は検索テキストを含む HttpPost リクエストをビューに送信します。ビューでは、抽象フィールドに HttpPost 経由で送信された検索テキストが含まれているすべての Article オブジェクトを取得したいと考えています。私の見解では、検索テキストを取得してから、次のようなモデルを取得しようとしています

しかし、結果は返されません。私が電話したら

ローカル テスト DB にある 12 個のモデル オブジェクトを返します。ただし、フィルター関数は結果を返しません。私がやろうとしていることは、

助言がありますか?ありがとうございました

0 投票する
1 に答える
296 参照

django - Django ORM 内で Haystack の結果を使用する

Haystack を使用して、ユーザー プロファイルを関心ごとにフィルタリングしています。Haystack の結果を使用してモデルをクエリし、これらのユーザー プロファイルに属する選択されたすべてのユーザーを返すにはどうすればよいですか?

現在、次の方法で実行していますが、haystack_results が何千ものエントリのリストになる可能性があるため、非常に遅いです。

ユーザーとプロファイルには、1 対 1 の関係があります。

何か良い方法を知っていますか?

助けてくれてありがとう、マティアス

0 投票する
1 に答える
87 参照

wordpress - きれいなパーマリンクへのWordpressの複雑な検索クエリ

Wordpress の複雑な検索クエリをきれいなパーマリンクに変換する方法があるかどうか疑問に思っています。

私が理解していることから、変換する方法があります:

www.domain.com/?s=keyword を www.domain.com/search/keyword に

ただし、次のような複雑な検索クエリを変更したい場合はどうすればよいでしょ

0 投票する
1 に答える
459 参照

django - Django Haystack SearchQuerySet order_by 結果を返さない

以下の「古いurls.py」でHaystackを使用しています。"New urls.py" に見られるように、モデル フィールド 'canonical_school_score' でorder_byを使用して検索結果を並べ替えようとすると、検索結果が得られません。私が間違っていることについて何か提案はありますか?

0 投票する
1 に答える
228 参照

solr - Haystack の検索結果をエクスポートする

ユーザーの検索結果をエクスポートしようとしています。Django + Haystack + Solr を使用して検索結果を生成しています。現在、SearchQuerySetCSV を書き出すための を作成するために、検索結果ページから CSV を生成するビューにクエリ パラメータを渡し、そこで を再構築してSearchQuerySetいます。ファセット、複数のモデルなどを使用して検索がかなり複雑であり、SearchForm. 結果をエクスポートビューに直接渡す簡単な方法があるはずです。助言がありますか?

編集

私は自分の解決策を考え出し、変更されたすべてのコードを回答に入れました。下記を参照してください。願わくば、これで他の誰かが 1 週間頭を壁にぶつけるのを防ぐことができます!