Slide 25
Slide 25 text
RPC でストアドファンクションを呼び出す(変更)
Future> searchNearSpot(SupabaseClient client, LatLng latLng,
int? distLimit, int? categoryId, String? keywords) async {
final List items =
await client.rpc('get_spots', params: {
'point_latitude': latLng.latitude,
'point_longitude': latLng.longitude,
'dist_limit': (distLimit ?? -1),
'category_id_number': (categoryId ?? -1),
'keywords': (keywords ?? '')
});
final List resultList = [];
for (dynamic item in items) {
final SpotData spotData = SpotData(
item['distance'] as num,
item['category_name'] as String,
item['title'] as String,
item['describe'] as String,
LatLng((item['latitude'] as num).toDouble(),
(item['longitude'] as num).toDouble()),
PrefMuni(item['prefecture'] as String, item['municipality'] as String));
resultList.add(spotData);
}
return resultList;
} 25
←以前のコードに引数「keywords」を追加しただけ
(ライブラリのバージョンアップで最後の
「.execute()」が不要に)