我正在Sharetribe网站上工作。我在person.rb
文件中添加了以下行:
validates_presence_of :address_line_1, on: :update
但是当出现错误通知消息时,它会显示translation missing: en.layouts.notifications.[:address_line_1, "can't be blank"]
我在网上搜索过,我看不出应该如何添加这个翻译?
仅供参考,Sharetribe运行Ruby 2.1.2和Rails 3.2.21。
答案 0 :(得分:1)
所有语言环境都在'config / locales / 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