我正在一个Sharetrib网站上工作。我在person.rb
文件中添加了以下行:
validates_presence_of :address_line_1, on: :update
但当错误通知消息出现时,它显示translation missing: en.layouts.notifications.[:address_line_1, "can't be blank"]
我在网上搜索了一下,看不出该如何添加此翻译?
仅供参考,Sharetrib运行在Ruby 2.1.2和Rails 3.2.21上。
所有的语言环境都在'config/lotes/en.yml'文件中定义。在文件中添加错误的翻译如下:
layouts:
notifications:
address_blank_error: "Address line 1 can't be blank"
并且,在您的people_controller.rb中,将代码更新为:
def update
.
.
if target_user.update_attributes(.....)
.....
else
if target_user.errors[:address_line_1].present?
flash[:error] = t("layouts.notifications.address_blank_error")
else
flash[:error] = t("layouts.notifications.#{target_user.errors.first}")
end
end