私は英語でロケールを設定すると、すべてが正常ですが、私がクリックしたときにどのようにしてレールアプリのロケールを「保持」できますか?
(フランス語がデフォルトである)私はレール5を使用して、レールのウェブサイトを作成し、私は英語でフランス語のウェブサイトを翻訳する可能性を追加しましたリンク上で、ウェブサイトはフランス語に戻り、ユーザーは再びウェブサイトを翻訳する必要があります
ユーザーが進むページを通してロケールを維持する方法はありますか?
は、事前にありがとうEDIT私はあなたが他のどのルートにルートのparamsを経由して、現在のロケールを渡すことができ、私のapplication_controller.rb
class ApplicationController < ActionController::Base
protect_from_forgery with: :exception
before_filter :set_locale
def set_admin_locale
I18n.locale = :fr
end
def default_url_options
{ locale: I18n.locale }
end
private
def set_locale
I18n.locale = params[:locale] || I18n.default_locale
Rails.application.routes.default_url_options[:locale]= I18n.locale
end
end
「バイオグラフィー」に向かいたいとします。リンクは、「%% link_to 'Biography」、「/ biography」、ロケール:params [:locale] 'のようになりますか? – Jaeger
2番目のparamは、 'url_for 'と同じ形式のハッシュを受け入れます。ここのドキュメントは、私よりも優れた例を示しています:https://www.google.ca/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwiE54jdi97OAhXErB4KHTs1A6MQFgglMAE&url=http%3A%2F%2Fapidock %2Frails%2Factioncontroller%2Fbase%2Furl_for&usg = AFQjCNGyIUdeGPANKXlQrIuAFuzNnKbu5g&sig2 = 4QlMg3BdzaBZf_jzAC2NOA – agmcleod