【发布时间】:2012-02-13 19:16:16
【问题描述】:
谁有一些关于如何在 Rails 中翻译模型关联的提示?
例如:我有一个 Person 模型,它可以有多个 Phone。但是,一个人需要至少有一部电话。我无法翻译该验证。我能做的最好的就是:
validates_presence_of :phones, :message => "At least one phone is required."
在我的 YAML 中,我替换了这一行以省略 %{attribute}:
format: ! '%{message}'
这样只显示我的消息,避免显示未翻译的字段名称。
这让我很头疼,因为有些 gem 根本不允许我传递:message => "something describing the error",所以我想通过我的 YAML 配置所有错误消息。
另外,对于某些模型,我可以翻译它们的属性,而对于其他模型,我不能。例如:
activerecord:
attributes:
additional_info:
account_manager: "Manager"
这行得通。我可以在我的表格“经理”上看到。但是,当这个字段有错误时,Rails 会显示为"Additional info account manager can't be blank"。
我试过了:
activerecord:
errors:
models:
additional_info:
attributes:
account_manager: "Manager"
但没有运气。
我确实阅读了文档,但不知道为什么会这样。
【问题讨论】:
标签: ruby-on-rails ruby validation internationalization