やりたいこと
Google Map APIを使用したPFを本番環境(AWS)にデプロイしたところ開発環境では表示されていた地図が表示されなくなっていた。
本番環境でも地図が表示されるようにする!
調査
Google Map APIの設定に不備があるのかなと思ったのでとりあえずググり以下の記事がヒット!
設定を確認するも全て設定済‥
Google Map APIには何も罪はなかったです 笑
ここから全く分からずめっちゃハマる‥
原因と解決策
結論から言うと地図が表示されないのはAPIキーをgitignore
している.env
ファイルに記入してたからでした。
そりゃ本番環境で動くはずないや‥
解決策は、config/credentials.yml.enc
でAPIキーを管理させればOK
vimファイルを開いて
$ EDITOR=vi rails credentials:edit
APIキーを入力
ちなみにvimファイルの入力の仕方はi
で入力できるようになり、
入力できたらescキーを押して:wq
で保存できます。
map_api_key: APIキー
保存後APIキーが正しく入力されているか一応コンソールで確認します。
APIキーが返ってきてたらOKです!
rails c
irb(main):001:0> Rails.application.credentials.map_api_key
=> "APIキー"
あとはMAP表示のための該当箇所を書き換えていきます。
MAP表示部分(haml)
%script{:async => "", :defer => "defer", :src => "https://maps.googleapis.com/maps/api/js?key=#{Rails.application.credentials.map_api_key}&callback=initMap"}
geocoderの設定ファイル
api_key: Rails.application.credentials.map_api_key
これで解決。
#おまけ
Map表示のやり方は以前まとめたのでよければ参考にしてみてください!