【发布时间】:2018-06-30 05:35:54
【问题描述】:
如何使 Activestorage 在我的语言环境中工作,例如 www.localhost:3000/es/?
我已经启动并运行了 activestorage。图像已保存并可在视图中查看。
然后,我使用以下代码将我的语言环境添加到我的路线中:
scope "(:locale)", locale: /#{I18n.available_locales.join("|")}/ do
resources :posts
root to: 'pages#index'
get '/*locale/*path', to: redirect("/#{I18n.default_locale}/%{path}")
get '/*path', to: redirect("/#{I18n.default_locale}/%{path}"), constraints: lambda { |req| I18n.available_locales.none? { |locale| req.path.starts_with? locale.to_s } }
我的application_controller.rb也有一个之前的操作
before_action :set_locale
def set_locale
I18n.locale = params[:locale] if params[:locale].present?
end
def self.default_url_options(options = {})
{ locale: I18n.locale }
end
如果我删除上面的代码,则会显示图像。如何使 image_tags 与我的国际化一起使用?
【问题讨论】:
标签: ruby-on-rails rails-i18n rails-activestorage