This is the Internationalization project for Solidus
solidus_i18n Version 2.0+ only contains translation files.
Previous versions of solidus_i18n included extra functionality like locale
selectors and which is now built in to Solidus 2.6+. Configuration for
routing-filter
has also been removed and must be configured manually
(See Locale in URL).
Add the following to your Gemfile
:
gem 'solidus_i18n', '~> 2.0'
gem 'rails-i18n', '~> 5.1'
gem 'kaminari-i18n', '~> 0.5.0'
Older versions of solidus_i18n included the routing-filter gem and configured routes to include the locale in the URL. This is still supported (maybe even recommended) but requires some additional configuration.
- Add this gem to your
Gemfile
, then runbundle install
gem 'routing-filter', '~> 0.6.0'
- Add
filter :locale
to yourconfig/routes.rb
Rails.application.routes.draw do
filter :locale
mount Spree::Core::Engine, at: '/'
end
- Configure routing-fitler in
config/initializers/locale_filter.rb
(optional)
# Do not include the default locale in the URL
RoutingFilter::Locale.include_default_locale = false
We currently support the following locales by default. If you need a locale that is not in the list you can add a custom translation file into your application by following the Rails translations guide.
If you want to improve the translations on your language, run the tasks:
bundle exec rake solidus_i18n:update_default
bundle exec i18n-tasks add-missing --nil-value --locale <LOCALE>
Substitute with your locale code (e.g: it
).
This will do a cleanup and prepare <LOCALE>.yml
with all the missing keys.
You can then write the translations and open a pull request.
We removed support for translating models into a separate Gem.
Please update your Gemfile
if you still need the model translations.
# Gemfile
gem 'solidus_globalize', github: 'solidusio-contrib/solidus_globalize', branch: 'master'
Solidus is an open source project and we encourage contributions. Please read CONTRIBUTING.md before contributing.