前提・実現したいこと
◾︎前提
緯度経度を取得済の施設と駅のテーブルが存在している
施設の住所テーブル(addresses)
|id|施設名|緯度|経度|最寄駅id(station_id)|徒歩距離(distance)
|:--|:--:|--:|
|1|施設1|35.699|139.777|3|NULL
駅テーブル(stations)
|id|駅名|緯度|経度|
|:--|:--:|--:|
|3|秋葉原|139.773|35.698|
◾︎実現したいこと
施設1と、最寄駅(id=3)の徒歩距離を取得し、施設テーブルの徒歩距離に格納するrake taskを作成したい
現在トライしている方法とわからないこと
以下の記事を参考にコードを書いてみているのですが、
https://qiita.com/izmth/items/3574c8d435c289a41955
おはずかしながら、色々検索して調べてみても、rake task内でのDirections APIの呼び出しかたがわからず、実行してみてもエラーが出てしまいます。
namespace :get_nearest_station_access do desc "get_nearest_station_access" task get_nearest_station_access: :environment do addresses = Address.all addresses.each do |address| nearest_station = Station.find(address.station_id) duration_result = gmaps.distance_matrix(origins=(address.latitude, address.longitude), destinations=(station.latitude, station.longitude),mode='walking') duration = duration_result['rows'][0]['elements'][0]['duration']['value'] address.distance = duration address.save end end end
rake task内でのGoogle map APIの呼び出し方や、
別の方法での実現方法、コードの書き方のアドバイスなど、
断片的な情報でも構いませんので、何かアドバイスいただける方がいらっしゃれば、ぜひお力添え願います。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/08/18 06:37 編集
2019/08/18 06:40
2019/08/18 07:03
2019/08/18 08:39