Rails 3.1 I18n word declensions

时间:2012-11-13 14:24:19

标签: ruby-on-rails internationalization

假设有一个名为“用户”的模型。我想使用表单助手为该用户创建一个表单以进行创建/更新操作。在我的母语中,模型名称的变化将在此上下文中发生变化。

例:
常见上下文中的型号名称应为“Пользовател* ь *”
表单上下文中的模型名称应为“by”Пользовател* я *“

我想强调的是,这个问题不是关于多元化的问题,互联网上的许多文章都涵盖了多元化。

1 个答案:

答案 0 :(得分:3)

答案:

我最终将以下内容添加到我的语言环境文件中:

cs:
  helpers:
    submit:
      user:
        create: "Vytvořit Uživatele" # Create + Accusative form of User in Czech
        update: "Uložit Uživatele"   # Update + Accusative form of User in Czech

这些是通过简单的形式获取的,我不确定它们是否会被常规表格助手或者表格自动拉出。

进一步的想法:

到目前为止,当我将其存储在我的模型中时,我没有弄清楚如何引用这种形式:

cs:
  models:
    user:
      one:"Uživatel"
      few:"Uživatelé"
      many:"Uživatelů"
      accusative:"Uživatele"

那会干掉它,因为我不再需要一个由型号名称作为范围的助手:

cs:
  helpers:
    submit:
      create: "Vytvořit <model.accusative>"
      update: "Uložit <model.accusative>"