Murloc
<img src=“travis-ci.org/WildDima/murloc.svg?branch=master” alt=“Build Status” />
This gem allows using localization through routing like this: ‘localhost:3000/en’, where en is the current locale.
Installation
Add this line to your application’s Gemfile:
gem 'murloc'
And then execute:
$ bundle
Or install it yourself as:
$ gem install murloc
Usage
Tested only on rails 5. For any other rails version working capacity wasn’t tested.
Add this to yours config/routes.rb file:
in_locales([:en, :ru]) do
# ...
end
The argument is an array of locales.
Also you need to include Murloc to yours ApplicationController:
class ApplicationController < ActionController::Base
include Murloc
# ...
end
Locale of user will be set in cookies, so user always will have the same locale, which he chosen.
To change locale you can use link_to helper:
link_to 'English', locale: :en
You can use it like this, to have list of all locales:
<I18n.locales.each do |locale|%>
<%= link_to locale, locale: locale %>
<end%>
And it’s just common link_to helper, so you can do anything like this:
<%= link_to_change_locale(:en) do %>
<span>Eng</span>
<%end%>
Development
After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.
To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to [rubygems.org](rubygems.org).
Contributing
Bug reports and pull requests are welcome on GitHub at github.com/wild_dima/murloc. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](contributor-covenant.org) code of conduct.
License
The gem is available as open source under the terms of the [MIT License](opensource.org/licenses/MIT).