2016-06-14 8 views
1

Ist es möglich, das Front-End von Algolia so einzurichten, dass es nur Ergebnisse, die ein übergebenes Attribut gleich einem explizit festgelegten Wert sowie die Benutzerabfrage zurückgegeben haben?Zurückgeben nur Abfragen mit einem Attribut legen einen expliziten Wert in Algolia

So sind die Suchanfragen für red shoes, aber ich möchte sie nur die Ergebnisse, die red shoes übereinstimmen und wo prices.isHigh gleich 20 (als Beispiel)?

Ich dachte an etwas wie attributesToRetrieve: 'prices.isHigh:20' oder vielleicht numericFilters: 'prices.isHigh:20' übergeben. Verwenden der JavaScript-API

Würde einer von denen arbeiten?

Antwort

1

Sie gab die Lösung in Ihrer Frage:

{ 
    query: 'red shoes', 
    numericFilters: 'prices.isHigh=20' 
} 

attributesToRetrieve auf der anderen Seite verwendet wird, zu beschränken, welche Attribute in der Antwort wollen die JSON Größe zu reduzieren und kann zum Zeitpunkt der Abfrage außer Kraft gesetzt werden. Es erwartet eine Liste von Attributen. Aus Sicherheitsgründen können Sie stattdessen die unretrievableAttributes Indexeinstellung festlegen, die nicht überschrieben werden kann.

+0

Hmm wissen Sie, wie ich das eigentlich im JavaScript-Client konfigurieren würde? Ich habe '{numericFilters: 'prices.isHigh: 20'}' gesetzt und bekomme einen Fehler: "Ungültige Syntax für numerische Bedingung: pricies.isHigh: 20" – Nicekiwi

+0

Ah, sollte 'prices.isHigh = 20' mit' sein = 'statt': '. – Nicekiwi

+1

Entschuldigung, ich habe meine Antwort bearbeitet, um das Problem zu beheben. – Jerska