David542
David542

Reputation: 110093

How to return distance of GoogleAPI search result?

Here is how I get all items within distance I need:

query_string = 'distance(LocationCoord, geopoint(35.2, 40.5)) < 1000'
query_options = search.QueryOptions(
    returned_fields=['ID', 'GUID', 'LocationCoord', '**distance()**']
)
query = search.Query(query_string=query_string, options=query_options)
res = index.search(query)

How would I actually return what the distance is in the search result?

Upvotes: 1

Views: 30

Answers (1)

David542
David542

Reputation: 110093

For this, you can add in a FieldExpression:

query_string = 'distance(LocationCoord, geopoint(35.2, 40.5)) < 1000'
expression = search.FieldExpression(name='distance', expression='distance(LocationCoord, geopoint(35.2, 40.5))')

query_options = search.QueryOptions(
    returned_fields=['ID', 'GUID', 'LocationCoord']
    returned_expressions=[expression],
)

query = search.Query(query_string=query_string, options=query_options)
res = index.search(query)

Upvotes: 1

Related Questions