Low commit activity in last 3 years
No release in over a year
Rails i18n view helpers for things like crud actions, models and attributes.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

>= 6.0.0
 Project Readme

I18nRailsHelpers

Build Status

Rails i18n view helpers for things like crud actions, models and and attributes.

  • Install
  • Examples
    • View Helpers
      • t_attr
      • t_title
      • t_action
      • t_confirm_delete
      • t_select_prompt
    • Controller Helpers
      • redirect_notice
      • t_attr
      • t_title
      • t_action
    • Model helpers
      • enum_attribute_t methods
      • t_enum
    • Required translations in locales (config/locales/zz.yml)
  • License

Install

In Rails simply add this to your Gemfile:

gem 'i18n_rails_helpers'

Examples

View Helpers

t_attr

t_attr('first_name', Patient) # en: 'First name' de: 'Vorname' - when called from views of any controller
t_attr('first_name')          # en: 'First name' de: 'Vorname' - when called in patients_controller views
t_attr(:first_name)           # en: 'First name' de: 'Vorname' - can also be called with symbols

t_title

t_title(:index)   # en: "%{model} index" ,  de: "%{model} Liste"
t_title(:edit)    # en: "Edit %{model}",    de: "%{model} bearbeiten"
t_title(:update)  # en: "Edit %{model}",    de: "%{model} bearbeiten"
t_title(:show)    # en: "Show %{model}",    de: "%{model} anzeigen"
t_title(:new)     # en: "New %{model}",     de: "%{model} erfassen"
t_title(:create)  # en: "New %{model}",     de: "%{model} erfassen"
t_title(:delete)  # en: "Delete %{model}",  de: "%{model} löschen"
t_title(:destroy) # en: "Delete %{model}",  de: "%{model} löschen"

t_action

t_action(:index)    # en: "Index",     de: "Liste"
t_action(:edit)     # en: "Edit",      de: "Bearbeiten"
t_action(:update)   # en: "Edit",      de: "Bearbeiten"
t_action(:show)     # en: "Show",      de: "Anzeigen"
t_action(:new)      # en: "New",       de: "Erfassen"
t_action(:create)   # en: "New",       de: "Erfassen"
t_action(:delete)   # en: "Delete",    de: "Löschen"
t_action(:destroy)  # en: "Delete",    de: "Löschen"
t_action(:cancel)   # en: "Abbrechen", de: "Abbrechen"
t_action(:back)     # en: "Back",      de: "Zurück"
t_action(:previous) # en: "Previous",  de: "Zurück"
t_action(:next)     # en: "Next",      de: "Weiter"

t_confirm_delete

t_confirm_delete(@account) # en: 'Really delete account Kasse?' de: 'Konto Kasse wirklich löschen?'

t_select_prompt

t_select_prompt(@account) # en: 'Select Account' de: 'Konto auswählen'

Controller Helpers

redirect_notice

def create
  # ...
  redirect_to some_path, redirect_notice           # => 'Klient erstellt.'
  redirect_to some_path, redirect_notice(@client)  # => 'Klient Example Client erstellt.'
end

def update
  # ...
  redirect_to some_path, redirect_notice           # => 'Klient geändert.'
  redirect_to some_path, redirect_notice(@client)  # => 'Klient Example Client geändert.'
end


def destroy
  # ...
  redirect_to some_path, redirect_notice           # => 'Klient gelöscht.'
  redirect_to some_path, redirect_notice(@client)  # => 'Klient Example Client gelöscht.'
end

t_attr

  • t_attr

t_title

  • t_title

t_action

  • t_action

Model helpers

enum_attribute_t methods

Automaticly generated enum attribut translation methods.

Required translations.

# Client model
enum gender: { undefined: 0, female: 1, male: 2, xy: 3 }

# in use
Client.first.gender    # => 'female'
Client.first.gender_t  # de: => 'Frau', en: => 'Woman'
Client.first.genders_t # => { undefined: 'Nicht definiert', female: 'Frau', male: 'Mann' }

t_enum

# Client model
enum gender: { undefined: 0, female: 1, male: 2, xy: 3 }

Client.first.gender # => 'female'
Client.first.t_enum(:gender) # de: => 'Frau', en: => 'Women'
Client.first.t_enum(:gender, :male) # de: => 'Mann', en: => 'Men'

Required translations in locales (config/locales/zz.yml)

---
de:
  activerecord:
    attributes:
      client:
        genders:
          undefined: Nicht definiert
          female: Frau
          male: Mann
---
en:
  activerecord:
    attributes:
      client:
        genders:
          undefined: Not defined
          female: Women
          male: Man
---
fr:
# ...

License

Released under the MIT license.