2016-08-08 12 views
1

Account,UserおよびAccountPermissionという3つのモデルがあります。ネストされた属性のエラーメッセージ

私はAccountAccountPermissionで作成していますが、ユーザーを作成しています。

ただし、Account:nameに関連して問題が発生した場合、システムは以下のようなものを投げます。

Account permissions account name has already been taken

だから、私はこのエラーメッセージを修正する必要があります。

私の検証にメッセージ属性を追加しようとしました。実際のメッセージに追加するだけです。

私もロケールを試しました。まだ添付しています

en: 
    activerecord: 
    errors: 
     models: 
     account: 
      attributes: 
      name: 
       taken: 'bla bla' 

限り、私はActiveModelに表示されています。このメッセージの構造ActiveModel

以下のロケール/ en.ymlから来
en: 
    errors: 
    format: "%{attribute} %{message}" 

だから、どのような方法編集は、このメッセージは無痛ありますか?モデル名を削除するだけでも十分です。

+0

あなたが求めているが、カスタムエラーメッセージを投げることができますか? –

答えて

1

エラーメッセージは、エラー自体と、提供されたエラーのaccount_permissions/account.nameである属性名から連結されています。

あなたはそうのようなあなたの属性名のロケールを追加することができます。検証が失敗したときに

en: 
    activerecord: 
    attributes: 
     account: # this is model name 
     name: "Name" 

または

en: 
    activerecord: 
    attributes: 
     account_permissions/account: 
     name: "Account name" 
+0

最後に!どうもありがとうございます。 'account_permissions/account'は動作します:) – utkuDAT

関連する問題