問題
rails の ビュー で使える asset_url の pass が controller 経由だと絶対パスなのに、サービスクラスなど controller 外だと相対パスを返してくるので、期待している動きと違って画像などがうまく読み込まれない模様
=> html = ApplicationController.new.render_to_string(inline: , layout: , locals: , ...) とした時に、中身を見るとasset_url を使って画像を読み込む部分がcontrollerから呼ぶときとサービスクラスから呼ぶときとで異なっていることを発見した
ルートのurlを コントローラーのインスタンスの asset_host に指定してあげればok
・localなら http://localhost:3000/
と直接指定してみたり
・どこかに定義しているなら指定の場所からルートのurlを指定する
*request.protocol + request.host とか req.host_with_port とかはサービスクラスで request は関係ないので、今回は使えなかった。