使用activescaffod时,在Rails 3.2.6上使用I18n转换活动记录错误

时间:2012-08-23 18:14:44

标签: ruby-on-rails-3 activerecord internationalization activescaffold

我正在尝试将I18n与activescaffold一起使用,这在翻译模型的错误方面运行良好。

但我想翻译一下:

  • “1个错误禁止此{model}被保存”
  • “以下字段存在问题:”

我的yml文件看起来像

sk:
 errors:
  template:
    header:
      one:   "1 error prohibited this %{model} from being saved"
      other: "%{count} errors prohibited this %{model} from being saved"
    body:    "There were problems with the following fields:"

activescaffold表单的结果是:

errors.template.header
errors.template.body

没那多运气。我知道'error_messages_for'已经折旧了,而且我还发现我应该更新我的观点...但是使用activescaffold,我没有使用任何视图,所以我不知道要更新什么来翻译上面的行。我安装了dynamic_form gem,但上面也没有。

我发现这篇文章:rails3 I18n: can't override...,但正如我所说,我没有使用任何观点,所以不确定如何覆盖上面。

任何提示都非常感激。

此致 扬

1 个答案:

答案 0 :(得分:1)

解决方案是查看activescaffold gem目录以查看默认en.yml的外观。

从那里很明显,错误消息应该表示如下:

en:
  active_scaffold:
    add: 'Add'
    add_existing: 'Add Existing'
    add_existing_model: 'Add Existing %{model}'
    errors:
      template:
        header:
          one:    "1 error prohibited this %{model} from being saved."
          other:  "%{count} errors prohibited this %{model} from being saved"
        body: "There were problems with the following fields:"