1

我有一个表格。许多标签的名称需要与模型中给出的名称不同。

attr_accessible :pin

简单形式视图:

= f.input :pin, :label => "Secret Code"

当验证失败时,错误会使用模型的字段名称(“Pin”),而不是我在视图中设置的标签(“Secret Code”)。用户会对哪个字段有错误感到困惑。

目前我有一个改变标签的助手:

def fix_pin_errors(msg)
  msg.gsub!('Pin', 'Secret Code')
end

但是,如果我在许多领域都这样做,它会变得乏味且不干燥。

让错误匹配与模型给出的名称不同的标签的最佳方法是什么?

4

1 回答 1

3

I18n 是你的朋友。阅读本指南。它将解释如何在全球范围内转换这些,以便在您需要的任何地方获取它们。

对于您的示例,它可能看起来像这样:

en.yml

en:
  activerecord:
    attributes:
      your_model_name:
        pin: 'Secret Code'
于 2013-01-28T18:59:50.147 回答