Ruby on rails 访问模型&x27;显示错误时的属性转换
我已经成功创建了he.yml来本地化模型的属性名称, 例如: 现在,使用simple_form的f.input在表单中显示标签,正确显示每个属性的转换值 问题是,在验证后显示错误时,使用Ruby on rails 访问模型&x27;显示错误时的属性转换,ruby-on-rails,ruby-on-rails-3,ruby-on-rails-4,rails-activerecord,Ruby On Rails,Ruby On Rails 3,Ruby On Rails 4,Rails Activerecord,我已经成功创建了he.yml来本地化模型的属性名称, 例如: 现在,使用simple_form的f.input在表单中显示标签,正确显示每个属性的转换值 问题是,在验证后显示错误时,使用 <% @vendor.errors.each do |attribute, error| %> |例如,显示错误“计数器编号”的属性“计数器编号”。 不是语言环境文件中的翻译版本[正如我前面提到的,已成功配置并加载]。 我在ul.errors中添加了错误,如此屏幕截图所示: 提前感谢。以下只
<% @vendor.errors.each do |attribute, error| %>
|例如,显示错误“计数器编号”的属性“计数器编号”。
不是语言环境文件中的翻译版本[正如我前面提到的,已成功配置并加载]。
我在ul.errors中添加了错误,如此屏幕截图所示:
提前感谢。以下只是一个示例,用于完成您提供的代码
<% @vendor.errors.each do |attribute, error| %>
<strong><%= t("activerecord.attributes.#{@vendor.class.to_s.underscore}.#{attribute}") %>:</strong>
<%= error.messages.to_sentence %>
<% end %>
:
也许有比这更简单的方法。您可以这样做:
@vendor.errors.messages do |attribute, errors|
translated_attribute = Vendor.human_attribute_name(attribute)
errors = errors.join(", ")
end
我已经用我的用户
模型对此进行了测试:
@vendor.errors.messages do |attribute, errors|
translated_attribute = Vendor.human_attribute_name(attribute)
errors = errors.join(", ")
end