2016-03-24 25 views
0

私は、AnnotationでSymfonyを使用しており、フォームでいくつかの検証チェックを行うためにアサートしています。Symfonyのプレースホルダannotation翻訳メッセージ

@Assert\NotBlank(message="not_blank") 

これは正しい言語でメッセージを生成し、この場合:

フィールドが

空にすることはできませんフィールドが空白でない場合は、以下のアノテーションで私がチェックしています

これで、フィールド名をプレースホルダとして追加したいので、すべてのフィールドに対して別々のメッセージを作成する必要はありません。だから、のようなもの:

その後、私は出力することができます:これがあれば

電子メールフィールドは

空にすることはできません訳

@Assert\NotBlank(message="not_blank {{ name=email }}") 

    <trans-unit id="1"> 
    <source>not_blank</source> 
    <target>This {{ name }} field cannot be empty</target> 
    </trans-unit> 

は、それは次のようになり、ファイル可能であれば、私は名前、電子メール、通りなどのすべてのフィールドについて別々のメッセージを作成する必要はありません。

答えて

0

あなたが@assert \ NotBlankを開くとあなたが見ることができます:

class NotBlank extends Constraint 
{ 
    public $message = 'This value should not be blank.'; 
} 

ですから、別の方法でそれを使用することはできませんが、基本制約クラスにConstraint

を拡張してカスタム制約を作成することができますTutorial

関連する問題