schema.xml
<field name="NameAdded" type="text_general" indexed="true" stored="true"/>
<field name="DateAdded" type="date" indexed="true" stored="true"/>
<field name="NameModified" type="text_general" indexed="true" stored="true"/>
<field name="DateModified" type="date" indexed="true" stored="true"/>
<field name="strSO" type="text_general" indexed="true" stored="true"/>
<field name="strCust" type="text_general" indexed="true" stored="true"/>
<field name="strOperator" type="text_general" indexed="true" stored="true"/>
<field name="PackName" type="text_general" indexed="true" stored="true"/>
<field name="DocName" type="text_general" indexed="true" stored="true"/>
<field name="DocType" type="text_general" indexed="true" stored="true"/>
<field name="extType" type="text_general" indexed="true" stored="true"/>
<field name="FileName" type="text_general" indexed="true" stored="true"/>
<field name="FilePath" type="text_general" indexed="true" stored="true"/>
<field name="NameDeleted" type="text_general" indexed="true" stored="true"/>
<field name="DateDeleted" type="date" indexed="true" stored="true"/>
<field name="intRev" type="text_general" indexed="true" stored="true"/>
<field name="strSO_ngram" type="text_ngram" indexed="true" stored="true"/>
<field name="PackName_ngram" type="text_ngram" indexed="true" stored="true"/>
<field name="DocType_ngram" type="text_ngram" indexed="true" stored="true"/>
<!-- Added for NGram field-->
<fieldType name="text_ngram" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.NGramTokenizerFactory" minGramSize="1" maxGramSize="20"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.EdgeNGramTokenizerFactory" minGramSize="1" maxGramSize="20"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
<!--
<copyField source="title" dest="text"/>
<copyField source="body" dest="text"/>
-->
<copyField source="strSO" dest="strSO_ngram"/>
<copyField source="PackName" dest="PackName_ngram"/>
<copyField source="DocType" dest="DocType_ngram"/>
код JavaScript
$(function() {
var URL_PREFIX = "http://localhost:8983/solr/archiveCore/select?q=strSO:";
var URL_SUFFIX = "&wt=json";
$("#searchBoxstrSO").autocomplete({
source : function(request, response) {
var URL = URL_PREFIX + $("#searchBoxstrSO").val() + URL_SUFFIX;
$.ajax({
url : URL,
success : function(data) {
var docs = JSON.stringify(data.response.docs);
var jsonData = JSON.parse(docs);
response($.map(jsonData, function(value, key) {
return {
label : value.strSO
}
}));
},
dataType : 'jsonp',
jsonp : 'json.wrf'
});
},
minLength : 1
})
});
$(function() {
var URL_PREFIX = "http://localhost:8983/solr/archiveCore/select?q=strSO:";
var URL_MIDDLE = "OR strSO_ngram:";
var URL_SUFFIX = "&wt=json";
$("#ngramBoxstrSO").autocomplete(
{
source : function(request, response) {
var searchString = "\"" + $("#ngramBoxstrSO").val() + "\"";
var URL = URL_PREFIX + searchString + URL_MIDDLE
+ searchString + URL_SUFFIX;
$.ajax({
url : URL,
success : function(data) {
var docs = JSON.stringify(data.response.docs);
var jsonData = JSON.parse(docs);
response($.map(jsonData, function(value, key) {
return {
label : value.strSO
}
}));
},
dataType : 'jsonp',
jsonp : 'json.wrf'
});
},
minLength : 1
})
});
</script>