Я пытаюсь найти документ в elasticsearch с помощью github.com/olivere/elastic, но не могу создать запрос ...
Мне нужны результаты ...
{
"query": {
"bool": {
"must": [
{
"match": {
"recipient_id": 111
}
}
]
}
}
}
Но в коде ...
import "github.com/olivere/elastic"
boolQuery := elastic.NewBoolQuery()
mustQueries := make([]elastic.Query, 0)
mustQueries = append(mustQueries, elastic.NewMatchQuery("recipient_id", 11))
boolQuery.Must(mustQueries...)
src, _ := boolQuery.Source()
PrintQuery(src)
func PrintQuery(src interface{}) {
fmt.Println("*****")
data, err := json.MarshalIndent(src, "", " ")
if err != nil {
panic(err)
}
fmt.Println(string(data))
}
Результаты
{
"bool": {
"must": {
"match": {
"recipient_id": {
"query": 11
}
}
}
}
}
Вы покидаете это ... Не могли бы вы мне помочь?
вот мой код, в котором я выполняю запрос
func Search() {
client, err := GetClient()
if err != nil { panic(err) }
boolQuery := elastic.NewBoolQuery()
mustQueries := make([]elastic.Query, 0)
mustQueries = append(mustQueries, elastic.NewMatchQuery("recipient_id", 111))
boolQuery.Must(mustQueries...)
searchResult, err := client.Search().
Index(NameIndex).
Type("_search").
Query(boolQuery).
Do(context.Background())
fmt.Println(searchResult)
fmt.Println(searchResult)
}