2017-07-05 5 views
2

Ich bin ein Neuling für Solr, und ich habe ein Problem.Was ist Standardfeld für Abfrage in Solr

Jeder Feldtyp Definition in Managed-Schema können Sie sowohl Index-Analysator und Query Analyzer angeben, wie folgt aus:

<fieldType name="text_en" class="solr.TextField" positionIncrementGap="100"> 
<analyzer type="index"> 
    <tokenizer class="solr.StandardTokenizerFactory"/> 
    <filter class="solr.StopFilterFactory" words="lang/stopwords_en.txt" ignoreCase="true"/> 
    <filter class="solr.LowerCaseFilterFactory"/> 
    <filter class="solr.EnglishPossessiveFilterFactory"/> 
    <filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt"/> 
    <filter class="solr.PorterStemFilterFactory"/> 
</analyzer> 
<analyzer type="query"> 
    <tokenizer class="solr.StandardTokenizerFactory"/> 
    <filter class="solr.SynonymFilterFactory" expand="true" ignoreCase="true" synonyms="synonyms.txt"/> 
    <filter class="solr.StopFilterFactory" words="lang/stopwords_en.txt" ignoreCase="true"/> 
    <filter class="solr.LowerCaseFilterFactory"/> 
    <filter class="solr.EnglishPossessiveFilterFactory"/> 
    <filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt"/> 
    <filter class="solr.PorterStemFilterFactory"/> 
</analyzer> 

Also, wenn ich eine Abfrage wie machen "q: etwas", wie Kann ich das Feld für "etwas" angeben, und was ist das Standardfeld dafür?

Antwort

2

Sie Standard-Suchfeld in Ihrem request handler finden sind, müssen Sie das/in conf überprüfen solrconfig.xml

prüfen "df" Parameter,

<str name="df">_text_</str> 

ODER wenn Sie bestimmte abfragen möchten Feld ohne df Wert zu ändern, dann müssen Sie Ihre Abfrage im folgenden Format angeben,

fieldname:something 

, wenn Ihre Abfrage mehr als ein Token hat man, wie es angeben,

fieldname:"something1 something2" 
+0

Ich habe es. Danke vielmals. – vincenteof