【问题标题】:Adding translations for the models in the Rails application在 Rails 应用程序中为模型添加翻译
【发布时间】:2010-10-20 11:06:43
【问题描述】:

我是 ROR 的新手。我正在尝试将翻译添加到我的应用程序中。我为控制器添加了翻译。

  1. 在哪里为模型添加翻译,因为我没有任何 /config/locales -> 模型文件夹 ->en.yml 文件。

  2. 在模型中,我的线条像 validates_presence_of :name, :message => "名称不能为空!"

如果我想为消息“名称不能为空”添加翻译,我应该直接输入吗

validates_presence_of :name, :message => I18n.t(str_name_notblank)

请提出建议

【问题讨论】:

    标签: ruby-on-rails internationalization


    【解决方案1】:

    要将翻译添加到您的模型中,您只需将它们放在activerecord->modelsactiverecord->attributes 下。这是一个波兰语示例:

    pl:      
      activerecord:
        models:
          patient: "Pacjent"
        attributes:
          patient:
            first_name: "Imię"
            last_name: "Nazwisko"
            address: "Ulica"
            postal_code: "Kod"
            city: "Miejscowość"
    

    注意attributes 元素不是patient 元素下,但实际上又包含了它。经过一些调试后,我发现了这一点,它实际上对我有用。 Rails I18n guide 建议了一个不同的结构,但它不起作用。

    翻译标准 Rails 消息(如用于验证的消息)的最佳方法是从 Sven Fuchs 的 Rails Locale Data Repository (rails-18n) 下载正确的翻译文件并将其放入您的 config/locales 文件夹(您可以更改名称)。然后,您将删除您的 :message 字符串并仅使用标准消息,但根据您的喜好进行翻译。

    【讨论】:

      猜你喜欢
      • 2012-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多