In schema.xml
erklärte ich nur ein Feld mehrere Werte haben multiValued="true"
verwenden, aber wenn ich die Antwort von *:*
Abfrage sehen, erhalte ich die Werte für alle Felder innerhalb []
(sagen, dass das bestimmte Feld mehrwertig ist) Klammern außer das Feld id
. Warum passiert es, kann mir bitte jemand sagen? U kann die Art der Antwort sehe ich bin immer unter:Warum werden alle Felder auf mehrwertig gesetzt, wenn ich in Solr nur ein Feld als mehrwertig einstelle?
{
"id": "id1",
"name": ["name1"],
"gender": ["male"],
"number":["9898989898"]
}
Und das ist, wie ich das Feld deklariert als mehrwertige in schema.xml
:
<field name = "id" type = "string" indexed = "true" stored = "true" required="true"/>
<field name = "name" type = "string" indexed = "true" stored = "true" required="true" multiValued="false"/>
<field name = "gender" type = "string" indexed = "true" stored = "true" required="true" multiValued="false"/>
<field name = "number" type = "string" indexed = "true" stored = "true" required="true" multiValued="true"/>
Sind Sie sicher, dass Ihre schame.xml verwendet wird (der Standard verwendet jetzt das verwaltete Schema)? Haben Sie nach dem Ändern des Schemas alle Dokumente gelöscht und neu indiziert? – MatsLindh
Folgen Sie den Mats-Kommentaren, starten Sie solr, gehen Sie in das Admin-Tool (localhost: 8983) und verwenden Sie den Schema-Browser, um Ihre Felder zu betrachten. Wählen Sie Kern -> Schema-Browser -> Feld –
Ich tat genau das Gleiche. Ich habe schema.xml geändert, den aktuellen Index gelöscht, solr gestoppt und neu gestartet. Und der Name ist schema.xml .. Ich verifizierte @MatsLindh. Ich habe keine Ahnung, warum es unerwartete Ergebnisse gibt. – Horcrux