あくまでやむを得ず。やらないに越したことはない。
root_url
などを普通にControllerやViewで使う分には、ローカルのhttpな環境で開発してようが、本番のhttpsで運用してようが意識しなくても大丈夫。
が、モデルとかで、
include Rails.application.routes.url_helpers
みたいに書いて無理やり使ってると、常にhttp
が返ってきてハマる。というかハマった。
# 引数で指定
root_url(protocol: 'http')
# デフォルトを変更
Rails.application.routes.default_url_options[:protocol] = 'https'
などの対応が必要。