1
我正在使用Ajax-Solr框架查詢Solr。 Ajax-Solr框架:https://github.com/evolvingweb/ajax-solrAjax-Solr中的拼寫檢查
我想使用solr的「拼寫檢查」功能。
夥計們,請幫我實施。
問候, 耆那
我正在使用Ajax-Solr框架查詢Solr。 Ajax-Solr框架:https://github.com/evolvingweb/ajax-solrAjax-Solr中的拼寫檢查
我想使用solr的「拼寫檢查」功能。
夥計們,請幫我實施。
問候, 耆那
我發現Ajax的solr的谷歌組這個例子。
Manager.addWidget(new AjaxSolr.SpellcheckWidget({
}));
SpellcheckWidget.js文件
(function ($) {
// For an AutocompleteWidget that uses the q parameter, see:
// https://github.com/evolvingweb/ajax-solr/blob/gh-pages/examples/reuters/widgets/AutocompleteWidget.q.js
AjaxSolr.SpellcheckWidget = AjaxSolr.AbstractSpellcheckWidget.extend({
suggestion: function() {
var replacePairs = {};
for (var word in this.suggestions) {
replacePairs[word] = this.suggestions[word][0];
}
return this.manager.response.responseHeader.params['spellcheck.q'].strtr(replacePairs);
},
beforeRequest: function() {
if (this.manager.store.get('spellcheck').val() && this.manager.store.get('q').val()) {
this.manager.store.get('spellcheck.q').val(this.manager.store.get('q').val());
}
else {
this.manager.store.remove('spellcheck.q');
}
},
afterRequest: function() {
this.suggestions = {};
alert(this.manager.response.spellcheck);
if (this.manager.response.spellcheck && this.manager.response.spellcheck.suggestions) {
var suggestions = this.manager.response.spellcheck.suggestions;
for (var word in suggestions) {
if (word == 'collation' || word == 'correctlySpelled') continue;
this.suggestions[word] = [];
for (var i = 0, l = suggestions[word].suggestion.length; i < l; i++) {
if (this.manager.response.responseHeader.params['spellcheck.extendedResults']) {
this.suggestions[word].push(suggestions[word].suggestion[i].word);
}
else {
this.suggestions[word].push(suggestions[word].suggestion[i]);
}
}
}
if (AjaxSolr.size(this.suggestions)) {
this.handleSuggestions(this.manager.response);
}
}
},
/**
* An abstract hook for child implementations.
*
* <p>Allow the child to handle the suggestions without parsing the response.</p>
*/
handleSuggestions: function() {}
});
})(jQuery);
您已經嘗試了什麼? –
我已經設置了請求者的例子。 –
但我不知道如何設置拼寫檢查 –