環境
- rails: rails 5.2.3
方法
Gem Errgent を使用して実現する
確認
config/environments/development.rb
の以下を編集して確認する
config.consider_all_requests_local = false
実際のコード
例. エラーコード 404, 500 ロケール毎に静的エラーページを生成する
=> 生成されるファイル 例. public/404.ja.html
desc 'Generate Error Pages'
task generate_error_pages: :environment do
I18n.available_locales.each do |locale|
I18n.locale = locale
renderer = Errgent::Renderer.new(
codes: [404, 500]
layout: 'layouts/error_page', # where to find your layout by default
output: "public/%s.#{locale}.html" # where to put generated pages by default, %s is the replacement for @code
)
renderer.render
end
I18n.locale = I18n.default_locale
end