問題タブ [django-haystack]
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.
python - zc.buildoutを使用してDjangoからsolrインデックスに追加する際の問題
zc.buildout 環境内で Apache Solr を実行しようとしています。
私は単純なモデルを定義しました:
search_index.py:
aは次のようにsearch_sites.py
定義します。
設定ファイルには次のものが含まれます。
「haystack」は INSTALLED_APPS にリストされ、pysolr は setup.py の「install_requires」にリストされます (ビルドアウトによって提供されます)。
私のbuildout.cfgには、、、およびが含まれてsolr-files
います。solr
solr-conf
supervisor
パスに追加${buildout:directory}/solr-conf
しました。[mkdir]
buildout.cfg の Supervisor セクションと solr セクションは次のようになります。
を実行する$ bin/buildout install solr-rebuild
と、次の出力が得られます。
同様に、実行中$ bin/django rebuild_index
または$ bin/buildout update_index
「django_ct」について文句を言います:
Failed to add documents to Solr: [Reason: ERROR:unknown field 'django_ct']
(私がしようとしているのは、solrを最新バージョンに更新することです..それができるかどうかを報告します..)
次にどこを見ればよいかわかりません。Google、グループ、およびスタックオーバーフローを検索しても、この時点を過ぎてしまいました。前もって感謝します!
django - Django+Haystack+Whoosh: 言語の変化に対処する方法
ヨーロッパの多くの言語には屈折があります。これは、テキスト内で 1 つの単語を複数の形式で記述できることを意味します。たとえば、ポーランド語の「コンピューター」という単語には、「コンピューター」、「コンピューター」、「コンピューター」、「コンピューター」などの複数の形式があります。
言語の変化に対処するために django+haystack+whoosh を適切に使用するにはどうすればよいですか?
「komputer」、「komputera」、「komputerowi」のいずれかの形式を検索するときはいつでも、これと同じことを意味します->「komputer」。
NLP には、単語のステミング (接尾辞の切り取り) またはフォームを基本フォームへの変換 ("komputerowi" => "komputer") に基づく基本的なアプローチがあります。それを支援するライブラリがいくつかあります。
私が最初に考えたのは、特定の変数で認識されたすべての単語を、フォームではなく基本フォームを使用してテキストに変換する特別なテンプレート フィルターを準備することでした。次に、django + haystack の検索インデックス テンプレートで使用できます。whooshエンジンで評価する前に検索クエリも変換される場合、これはうまく機能するはずです。例を参照してください:
しかし、これがこの問題の「エレガントな」解決策だとは思いません。また、スペルミスの提案を提案するなど、他のいくつかの機能も機能しません。
では、この問題をどのように解決すればよいですか? たぶん、whoosh 以外の検索エンジンを使用する必要がありますか?
django-haystack - haystackdjangoを使用したsolrstrfield
私のフィールドの1つに、solr.StrFieldが必要ですが、Haystackでサポートされていないようです。strfieldを含めて./manage.pybuild_solr_schemaを使用してschema.xmlを作成する方法はありますか?
django - DjangoHaystack検索で結果がありません
はじめにのドキュメントと他のいくつかの例をWebで読みました。そして、これは私のsearch_indexes.pyがどのように見えるかです:
しかし、検索しても結果が得られません。不思議なことに、検索フレーズ「a」またはその他の1文字を使用すると、いまいましいもののすべてのエントリのように見えます。
とにかく...検索エンジンがどのフィールドも探していないように私には見えます。:/
この線より下にあるものはあまり関連性がありません(それは機能します、私を信じてください):
私の見解:
そしてsearch_results.html:
django - django-haystackで、モデルのサブクラスを使用するにはどうすればよいですか?
django-haystack(xapianバックエンドを使用)を取得して、ここでモデルにインデックスを付けて、フィールドname
とdescription
フィールドで検索しようとしています。
フィールドを追加する、Item
のサブクラスがあります。Device
manufacturer
モデルは次のItem
ように定義されます。
django-haystackの私のサブクラスは次のSearchIndex
ようになります。
私はこのテンプレートを次のように設定しましたtemplates/search/indexes/catalog/item_text.txt
:
モデルオブジェクトがのインスタンスである場合にのみ、フィールドにインデックスが付けられるitem_text.txt
ように何を追加しますか?manufacturer
Device
python - DjangohaystackMultiValueFieldを使用して検索結果ビューのアイテムを反復処理する
検索インデックスの1つにMultiValueFieldがあり、検索結果に各値を表示したい場合、どうすればよいですか?何かが適切にフォーマットされていないようです、または私はどういうわけかMultiValueFieldを誤解していますか?
テンプレートビューでこれを活用するには:
これは私には何も返さないようです:(
django - Haystack more_like_this はすべてを返します
検索にはDjango、haystack、solrを使用しています。検索できるようになりましたが、more_like_this を使用して同様のアイテムを見つけたいと考えています。more_like_this 機能を使用しようとすると、そのモデル タイプに厳密に一致するオブジェクトだけでなく、そのモデル タイプのすべてのオブジェクトが返されます。私がそれをどのように使用しているかを示すコードを次に示します。
どうやら、solrconfig.xml ファイルで mlt を有効にする必要があるようです。これを行う方法、または役立つ記事/チュートリアルを知っている人はいますか?
python - WhooshとDjangoHaystackを使用する場合のValueError
WhooshでHaystackをセットアップしようとしていますが、。/ manageシェルのSearchQuerySetオブジェクトでcountメソッドを実行すると、この値エラー「ValueError:ディクショナリ更新シーケンス要素#0の長さは9、2が必要です」が発生します。
solr - django-haystack + solr で地理空間検索を実行する方法
現在、xapian で django haystack を使用しています。xapian で地理空間クエリを実行する方法に関するドキュメントが見つかりませんでした。しかし、Solr には勢いがあるようです。だから私は現在それを実験しています。
私は、spatialSolr をローカルで適切に動作させることができませんでしたが、今のところ、spatial-solr-light で動作しており、問題なく動作しているようです。次のようなクエリを受け入れます
http://127.0.0.1:8080/solr/select/?q=blahblah&spatial= {!radius=1.0%20sort=true}lat:10.0,lng:-10.0
そのようなカスタムクエリを渡すことができる干し草スタックのパッチを教えてください。raw_search() を使用できますが、結果をチェーンできません。いずれにせよ、sqs.spatial(....) のようなことを行うためのよりクリーンな方法を見つけたいと思います。
Google グループ (以下のリンク) で言及されている他の人々からのパッチがいくつかありますが、それらのほとんどは到達できません。
参考文献:
django-haystack - django haystack と参加 SearchResult
Haystack には少し問題があります。
私は検索フォームを持っていて、それが送信されたら、3 つのモデルで調査を行うので、単純に以下を使用します。
ここで、PlayList のモデルからオブジェクトを filter() する必要があります。しかし、もしそうなら:
filter() は 3 つのモデルに使用されます (ドキュメントに記載されています)。
だから私はそれをすると思います:
しかし、1 つの変数だけを返したいのですが、結果 1 と結果 2 を結合する方法がわかりません。
誰にもアイデアがありますか?
ありがとう。