Skip to content

ippachi/hanami-i18n

Repository files navigation

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.

About

No description, website, or topics provided.

Resources

Code of conduct

Stars

Watchers

Forks

Packages

No packages published