問題タブ [search-suggestion]
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.
grails - Grails ElasticSearch プラグイン - クエリの提案
プラグインを使用して提案クエリを作成することは可能ですか? プラグインのドキュメントにはそれについて何もありません。可能な場合、どうすればよいですか?
提案クエリに関するelasticsearchドキュメントは次のとおりです 。 http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-suggesters.html http://www.elasticsearch.org/guide/en/elasticsearch/reference /current/search-suggesters-completion.html
答えてくれてどうもありがとう。
android - 入力中に候補ビューに表示されるように、Android ユーザー辞書に新しい単語を追加する方法
この問題をウェブ全体で検索して調べましたが、明確な答えが得られませんでした。Androidのドキュメントには単語が追加されると記載されているため、コンテンツ プロバイダーを使用してユーザー辞書に単語を追加しましたが、その後キーパッドに入力すると、候補ビューの候補に単語が表示されず、タップした他の単語として表示されません。次回そこに登場。多くの人がネット上で質問し、回答を得られていないため、この問題に対する完全な回答を本当に感謝しています. 私はこれを試しました
誰かがここで私を助けてくれれば幸いです
android - Android - ユーザーが検索候補を選択したときにデータを渡す方法は?
検索候補を含む SearchActivity を作成しています。SearchView に単語を入力し始めると、候補は期待どおりに表示されますが、候補の 1 つをクリックすると、次のエラーが発生します。
そのような列はありません: 製品
これは私の searchable.xml エントリに関連しているようです...
android:searchSuggestIntentData="content://com.example.dbcontentprovider/products
query()
...なぜなら、私の DbContentProvider クラスのメソッドに渡される URIは...
content://com.example.dbcontentprovider/products
...それに対して、私はそうあるべきだと思います...
content://com.example.dbcontentprovider/products/(id_of_selected_product)
プロジェクション マップのデータを正しく使用していないことが問題である可能性があると思いますが、SearchManager.SUGGEST_COLUMN_INTENT_DATA_ID
考えられるすべての組み合わせを試しましたが、どこにも行きませんでした。
Androidのドキュメントはまったく役に立たず、私が取り組んでいるReto Meierの本はここでの問題をほのめかしていないので、誰でも解決策を提案できます.
私の関連するコードは...
DbContentProvider.java:
SearchActivity.java:
searchable.xml:
AndroidManifest.xml:
そして(ペニーのために...)、提案をクリックしたときの上記のコードからのLogCat出力は次のとおりです...
09-30 21:01:39.720: D/AbsListView(4571): onDetachedFromWindow 09-30 21:01:39.720: D/AbsListView(4571): unregisterIRListener() が呼び出されます 09-30 21:01:39.770: D/SearchActivity (4571): インテント: インテント { act=android.intent.action.VIEW dat=content://com.example.dbcontentprovider/products flg=0x10000000 cmp=com.example/.SearchActivity (エクストラあり) } 09-30 21 :01:39.770: D/SearchActivity(4571): クエリ: hei 09-30 21:01:39.770: D/SearchActivity(4571): detailUri: content://com.example.dbcontentprovider/products 09-30 21:01 :39.770: D/SearchActivity(4571): id: 製品 09-30 21:01:39.780: D/SQLiteOpenHelper(4571): query() 09-30 21:01:39.780: D/SQLiteOpenHelper(4571): プロジェクション: {"_id", "brand_name"} 09-30 21:01:39.780: D/SQLiteOpenHelper(4571): 選択: _id = 製品 09-30 21:01:39.780: D/SQLiteOpenHelper(4571): selectionArgs: null 09-30 21:01:39.780: D/SQLiteOpenHelper(4571): sortOrder: null 09-30 21:01:39.780: D/SQLiteOpenHelper (4571): クエリ (すべての行): content://com.example.dbcontentprovider/products 09-30 21:01:39.780: D/SQLiteOpenHelper(4571): sql: SELECT _id, brand_name FROM brand_names WHERE (_id = 製品) 09-30 21:01:39.780: E/SQLiteLog(4571): (1) そのような列はありません: 製品 09-30 21:01:39.780: W/dalvikvm(4571): threadid=16: キャッチされない例外で終了するスレッド (group=0x41ebcda0) 09-30 21:01:39.780: E/AndroidRuntime(4571): 致命的な例外: AsyncTask #3 09-30 21:01:39.780: E/AndroidRuntime(4571): プロセス: com.example、PID: 4571 09-30 21:01:39.780: E/AndroidRuntime(4571): java.lang.RuntimeException: An doInBackground() 09-30 21:01:39.780 の実行中にエラーが発生しました: E/AndroidRuntime(4571): android.os.AsyncTask$3.done(AsyncTask.java:300) 09-30 21:01:39.780: E/ AndroidRuntime (4571): java.util.concurrent.FutureTask.finishCompletion (FutureTask.java:355) 09-30 21:01:39.780: E/AndroidRuntime (4571): java.util.concurrent.FutureTask.setException (FutureTask) で.java:222) 09-30 21:01:39.780: E/AndroidRuntime(4571): java.util.concurrent.FutureTask.run(FutureTask.java:242) 09-30 21:01:39 で。780: E/AndroidRuntime(4571): java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 09-30 21:01:39.780: E/AndroidRuntime(4571): java.util.concurrent.ThreadPoolExecutor で$Worker.run(ThreadPoolExecutor.java:587) 09-30 21:01:39.780: E/AndroidRuntime(4571): java.lang.Thread.run(Thread.java:841) で 09-30 21:01:39.780: E/AndroidRuntime(4571): 原因: android.database.sqlite.SQLiteException: そのような列はありません: 製品 (コード 1): 、コンパイル中: SELECT _id, brand_name FROM brand_names WHERE (_id = 製品) 09-30 21:01:39.780: E/AndroidRuntime(4571): android.database.sqlite.SQLiteConnection.nativePrepareStatement(ネイティブ メソッド) 09-30 21:01:39.780: E/AndroidRuntime(4571): android.database で.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:1121) 09-30 21:01:39.780: E/AndroidRuntime(4571): android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:694) で 09-30 21 :01:39.780: E/AndroidRuntime(4571): android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588) 09-30 21:01:39.780: E/AndroidRuntime(4571): android.database. sqlite.SQLiteProgram.(SQLiteProgram.java:58) 09-30 21:01:39.780: E/AndroidRuntime(4571): android.database.sqlite.SQLiteQuery.(SQLiteQuery.java:37) 09-30 21:01: 39.780: E/AndroidRuntime(4571): android.database.sqlite.SQLiteDirectCursorDriver.クエリ (SQLiteDirectCursorDriver.java:44) 09-30 21:01:39.780: E/AndroidRuntime(4571): android.database.sqlite.SQLiteDatabase.rawQueryWithFactory で (SQLiteDatabase.java:1436) 09-30 21:01:39.780: E/AndroidRuntime(4571): android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:400) 09-30 21:01:39.780: E/AndroidRuntime(4571): android.database.sqlite.SQLiteQueryBuilder.query (SQLiteQueryBuilder.java:294)クエリ (SQLiteQueryBuilder.java:294)クエリ (SQLiteQueryBuilder.java:294) 09-30 21:01:39.780: E/AndroidRuntime (4571): com.example.DbContentProvider.query (DbContentProvider.java:124) で 09-30 21:01:39.780: E/AndroidRuntime(4571): android.content.ContentProvider.query(ContentProvider.java:857) 09-30 21:01:39.780: E/AndroidRuntime(4571): Android で。 content.ContentProvider$Transport.query(ContentProvider.java:200) 09-30 21:01:39.780: E/AndroidRuntime(4571): android.content.ContentResolver.query(ContentResolver.java:464) 09-30 21: 01:39.780: E/AndroidRuntime(4571): android.content.CursorLoader.loadInBackground(CursorLoader.java:65) 09-30 21:01:39.780: E/AndroidRuntime(4571): android.content.CursorLoader.loadInBackground で(CursorLoader.java:43) 09-30 21:01:39.780: E/AndroidRuntime(4571): android.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:312) 09-30 21:01:39.780: E/AndroidRuntime (4571): android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:69) 09-30 21:01:39.780: E/AndroidRuntime(4571): android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:57) 09-30 21:01:39.780: E/AndroidRuntime( 4571): android.os.AsyncTask$2.call(AsyncTask.java:288) 09-30 21:01:39.780: E/AndroidRuntime(4571): java.util.concurrent.FutureTask.run(FutureTask.java: 237) 09-30 21:01:39.780: E/AndroidRuntime(4571): ... 3 つ以上
wildcard - GSA ワイルドカード検索と提案が連携しない
ワイルドカード検索をサポートする GSA 7.2 バージョンを使用していますが、ワイルドカード検索を有効にするとすぐにスペル候補が表示されなくなります。以下の URL を見て、取得を開始するために何をすべきかを提案してください。
http:// {ホスト名}/search?start=0&num=1000&site=xyzTest&output=xml&client=frontend&filter=0&getfields= &q=sken
上記のクエリでは、検索用語は「sken」です。GSA 候補タグが表示され、「skin」の候補が表示されるはずですが、実行されていません。
solr - フレーズsolrjのオートコンプリート
フレーズ クエリにオートコンプリート機能を追加しようとしています。次の構成を持っています - schema.xml ファイルに
solrconfig.xml で
また、次のことを設定しています-solrjを使用したsolrへのクエリ用
ただし、フレーズ クエリは単一の用語に対してのみ機能するため、結果は得られません。助言がありますか。Solr4.10.2を使用しています
solr - Solr (Open Solr) のサジェスターの結果に句読点が含まれている
私は提案者に取り組んでおり、返される結果には句読点が含まれています。たとえば、「Volcan」と入力すると、次のようになります。
"volcanoes", "volcanic", "volcano", "volcano,", <- コンマ "volcanoes." <- ピリオド/ピリオド
solrconfig.xml ファイルのコードは次のとおりです。
schema.xml ファイルには、次のものがあります。
結果は次のとおりです。
solr - solrで音声フィルターを使用して、クエリの最も可能性の高いドキュメントを取得する
スペルチェック/クエリ修正にsolrを使用しています。スペル チェックを実行するために、fieldType にsolr.PhoneticFilterFactoryとsolr.NGramFilterFactoryを追加しました。正常に動作していますが、ここでの問題は、クエリのドキュメントの数を取得していることです。最も可能性の高い単語/ドキュメントまたは類似の単語のみが必要です。クエリに近い単語/ドキュメントと言えます。
schema.xmlのスニペット:
例:クエリ「piece」の場合。約780 NumFound (ドキュメントの数) を取得しています。この数を減らす必要がありますが、ドキュメントの数が最も多い可能性があります。
solr - EdgeNGramFilterFactory が solr で正常に動作しない
ここで説明されているsolrでsolr.EdgeNGramFilterFactoryを試しています。 schema.xmlのfieldTypeのインデックス アナライザーに
追加しました。私が知っているように、solr.EdgeNGramFilterFactoryは次のようなトークンを作成します <filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="15" />
したがって、クエリを検索すると、 if 、 if 単語のトークンを含むすべてのドキュメントが表示されます
かどうかなどの関連書類だけあればいいので、 のような不要な書類は必要ありません。weather, wether, ether, heather
brother, shepherd etc
schema.xml :
solrconfig.xml :
android - Android - SearchView の提案でテキストの切り捨てを防止しますか?
ListView
my の下のデフォルトに表示される提案にSearchView
は、切り捨てられたテキストが含まれています。テキスト全体を (必要に応じて複数行で) 表示したいと考えています。
私はこれを解決する2つの可能な方法を考え出しましたが、ネット上で例が見つからないため、ここの誰かが助けてくれることを望んでいました...
アプローチ #1 / Q1:SUGGEST_COLUMN_TEXT_1
およびSUGGEST_COLUMN_TEXT_1
テキストを保持する TextViews の外観に直接アクセスして変更するにはどうすればよいですか?
アプローチ #2 / Q2:あるいは、SearchView には、setSuggestionsAdapter(CursorAdapter adapter)
アプローチ #1 よりも (より?) 適しているように見えるメソッドがあります。私は CursorAdapters を読んでいて、アプリに既に実装されていますが、SearchView 用に構成する方法がわかりません (特に、カーソルへのアクセスに関して)。またはスケルトンの例?
私の SearchViewFragment クラスの既存のコードは次のとおりです。
}
更新:解決しました!
受け入れられた回答のおかげで、私はかなりきれいでうまく機能するこのコードを作成しました...
そして、ここに私のsearch_view_suggestions.xmlがあります...
...結果は、テキストの切り捨てではありません。:-)
jquery - CKEditor のオートコンプリート リスト
CKEditor に機能を追加して、ユーザーがドキュメントに「#」と入力したときに提案を提供する必要があります。提案は、ページの他のフィールドに応じてその場で変更できます。助けてください