Hanami::I18n
It is a gem that integrates Hanami and i18n.
Getting start
Add Gemfile
gem 'hanami-i18n'
Next, put the initialization file of I18n in config/locale.rb
.
Then place the locale file in any location.
Important: config/initalizers
will not work.
例:
# config/locale.rb
I18n.load_path << Dir[File.expand_path("config/locales") + "/*.yml"]
I18n.default_locale = :en # (note that `en` is already the default!)
# config/locales/en.yml
en:
models:
attributes:
user:
name: "My name"
email: "My E-mail"
errors:
filled?: "MUST be filled!"
Then it can be used as follows.
form
form_for :user, routes.users_path do
label :name
label :email
end
<form>
<label>My name</label>
<label>My E-mail</label>
</form>
validation
params do
required(:user).schema do
required(:name).filled(:str?)
required(:email).filled(:str?)
end
end
params.errors(full: true) # => { user: {:email=>["My name MUST be filled!"], :post=>{:title=>["My E-mail MUST be filled!"]}} }
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.
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/hanami-i18n. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
Code of Conduct
Everyone interacting in the Hanami::I18n project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.