Neu bei ElasticSearch - fangen Sie an, es zu lieben. Ich arbeite an einer Rails-Anwendung (mit elasticsearch-rails/elasticsearch-model).Wie Sie zwei verschiedene Felder mit unterschiedlichen Abfragebegriffen in derselben Anfrage abfragen. ElasticSearch 5.x
Ich habe zwei Felder - beide Zeichenfolgen bestehen aus Tags.
ABOUT_ME & about_you
- Nun war ich mit den aktuellen Benutzer ABOUT_ME die about_you eines anderen Benutzers abfragen.
- Gleichzeitig möchte ich about_me der anderen Benutzer mit dem about_you des aktuellen Benutzers abfragen.
Macht das Sinn? Wie zwei Felder sind zwei Abfragen und jede Abfrage auf ein bestimmtes Feld ausgerichtet.
Ich brauche nur einen Hinweis, wie dies in ES erreicht werden kann. Aus Gründen der Vollständigkeit, hier ist der Teil Methode, die ich in meinem Schienen-Modell erstellt - es ist unvollständig:
def home_search(query_you, query_me)
search_definition =
{
query: {
multi_match: {
query: query_me,
fields: ['about_you']
}
..... SOMETHINGs MISSING HERE ..... ?
},
suggest: {
text: query,
about_me: {
term: {
size: 1,
field: :about_me
}
},
about_you: {
term: {
size: 1,
field: :about_you
}
}
}
}
self.class.__elasticsearch__.search(search_definition)
end
Jede Hilfe, Link oder Spenden sind willkommen. Vielen Dank!
Genau das, was ich suchte. Ja, ich habe letzte Nacht auf Bool-Anfragen gelesen. Viel Spaß beim Einlassen - aber ich habe mir versprochen diese Woche zu meistern! Vielen Dank für Ihre Anregungen - sehr hilfreich! –