https://ruby-rails.hatenadiary.com/entry/20141217/1418817120
を参考にしてアプリケーションコントローラーに
class ApplicationController < ActionController::Base around_action :set_time_zone private def set_time_zone if user_signed_in? && !current_user.time_zone.nil? Time.use_zone(current_user.time_zone) { yield } else yield end end
とかいたところ html.erb 内では
console.log('<%= Time.zone.tzinfo.identifier %>');
で出力してみたら変更されたタイムゾーンが表示されるのですが
assets/内の js.erb に書くと application.rb にかかれたデフォルトのタイムゾーンになってしまいます
サイト内の全ページで JS が実行される前に Rails 側からタイムゾーンをセットしたいんですけど
全ページの view のヘッダすべてに
<script> moment.tz.setDefault('<%= Time.zone.tzinfo.identifier %>'); </script>
をうめこむしかないのでしょうか
サイト内の全ページで必ずとおって他のJSよりも早く呼ばれて ERB で Rails の変数を使うには
どのファイルにJSの設定をかけばいいのでしょうか
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/09/27 03:43