如何添加此翻译?

时间:2016-01-07 12:30:41

标签: ruby-on-rails ruby-on-rails-3 sharetribe

我正在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。

1 个答案:

答案 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