So schließen Sie Felder in einer SOLR-Abfrage aus

8

Ich habe eine SOLR-Abfrage, die alle Felder abrufen soll, außer einem Feld.
Angenommen, ich habe 20 Felder, muss ich die 19 Felder, die ich abfragen möchte, fest im
&fl=[f],[f],[f],....[f]'
programmieren Oder gibt es eine Möglichkeit, etwas ähnliches zu tun wie% code%% /%

&fl=*,![f]' steht für einen Feldnamen.

    
Itay Moav -Malimovka 19.04.2013, 16:28
quelle

4 Antworten

12

Leider ist die Möglichkeit, einen Feldnamen über die Abfragezeichenfolge zu entfernen, immer noch eine ausstehende Verbesserungsanfrage. Weitere Informationen finden Sie unter SOLR-3191 .

Bis diese Verbesserung implementiert ist, müssen Sie alle 19 Felder im Parameter fl angeben. Sie können jedoch Ihren standardmäßigen /select requestHandler aktualisieren, um die 19 Felder zu definieren, die Sie als Standardeinstellung zurückgeben möchten, die auf alle Abfragen angewendet werden, sofern sie nicht in der Abfragezeichenfolge überschrieben werden.

Hier ist eine modifizierte Version des standardmäßigen /select requestHandler aus dem Beispiel solrconfig.xml:

%Vor%

Weitere Informationen zu diesen Standardeinstellungen und der Konfiguration von requestHandler finden Sie unter RequestHandlers und SearchComponents in SolrConfig .

    
Paige Cook 19.04.2013, 17:24
quelle
6

Eine weitere Option könnte sein: Felder, die Sie einbeziehen möchten, sollten ein gemeinsames Präfix verwenden; obendrein können Sie in Ihrem FL Globs verwenden. Wenn Sie zum Beispiel annehmen, dass das Präfix enthalten sein soll, können Sie einen fl-Wert wie

haben

sollte enthalten sein *.

    
Andrea 28.06.2015 20:23
quelle
0

Es gibt einen weiteren einfacheren Patch, der den einfachen Fall hier löst: Ссылка wenn er akzeptiert wird, funktioniert es so:

%Vor%

Um das Titelfeld zu entfernen.

    
Gus 02.09.2016 21:15
quelle
0

Eine weitere Option wäre die Verwendung des Document Transformer ValueAugmenterFactory um den tatsächlichen Rückgabewert des Feldes durch eine leere Zeichenfolge zu ersetzen.

Dies sollte funktionieren, wenn Sie lediglich die Rückgabe des Inhalts dieses Feldes vermeiden möchten.

Es folgt ein Beispiel, das den Inhalt des Titelfeldes ersetzt:

%Vor%     
Wellington 07.10.2016 21:25
quelle

Tags und Links