Rails嵌套属性的更漂亮的错误消息?

时间:2017-05-11 17:23:06

标签: ruby-on-rails activerecord activemodel

以我的订单结帐流程为例,

订单属于来宾

来宾属于用户

用户有很多电话号码

号码是电话号码的属性。

我会收到如下错误消息:

<fileset id="filesref" dir="path/to/dir" includes="*"/> <property name="files" refid="filesref"/> <echo message="Files:${line.separator}" /> <for list="${files}" delimiter=";" param="file" > <sequential> <echo message=" @{file}"/> <!--Do more stuff with the file's name here--> </sequential> </for>

如何返回更漂亮的信息? 类似的事情,&#39;电话号码格式无效。&#39;或者&#39;电话号码无效&#39;

我意识到我可以将它从字符串中删除,但是我希望有一种Rails方式来定义关联名称或其他东西?有I18n的支持吗?

1 个答案:

答案 0 :(得分:1)

  

如果您需要访问给定的嵌套属性   在模型中,您应该在模型级别将它们嵌套在模型/属性下   您的翻译文件:

en:   
  activerecord:
    attributes:
     user/gender:
       female: "Female"
       male: "Male"
     

然后User.human_attribute_name("gender.female")将返回“女性”    - Rails Guides - Translations for Active Record Models

en:
  activerecord:
    attributes:
      guest/user/phone_numbers:
        number: 'Phone number'