Hasura telah membangun dukungan untuk PostGIS dalam skema GraphQL mereka. Karena bidang Anda sudah bertipe geography
, Anda tidak memerlukan fungsi tersebut.
Di Hasura Anda perlu membuat hubungan antara offers
dan address
tabel, dan kueri GraphQL harus seperti:
query nearby_offers($point: geography!) {
offers(where: {address: {location: {_st_d_within: {distance: 200000, from: $point}}}}) {
id
offer_fields
address {
location
}
}
}
Jenis geografi di Hasura mengharapkan nilainya berada di GEOJSON
format. Berikut adalah bagaimana variabel Anda $point
akan terlihat seperti:
{
"point": {
"type" : "Point",
"coordinates": [longitude, latitude]
}
}
Jenis variabel yang sama (GEOJSON) diharapkan saat memasukkan nilai (mutasi).