2016-07-01 9 views
1

@UniqueEntity制約でメッセージをどのように翻訳できますか?@UniqueEntityカスタムメッセージは翻訳されていません

私はこのような状況があります。私はそれが自動的にいくつかのバンドルされた文字列に変換されます(「この値はすでに使用されている」)、デフォルトのメッセージを残して...しかし、私はいずれかを見つけることができない場合

/** 
* @ORM\Entity 
* @ORM\Table(name="sites") 
* @UniqueEntity(
*  fields={"url"}, 
*  message="This url is already registered. Please choose a different url." 
* ) 
*/ 
class Site 
{ 

をカスタムエラーメッセージの翻訳方法に関するドキュメント。 (私はその文字列をデフォルトのドメインmessagesに入れようとしましたが、翻訳されません)

答えて

3

私が知った。あなたは、たとえば、validatorsドメインで翻訳ファイルを作成する必要がありますので

ドメインは、バリなくメッセージです:私は、配列の元の形式でPHPファイルを使用し

// app/Resources/translations/validators.it.php 

return [ 
'This url is already registered. Please choose a different url.'=>'Questo url è già registrato. Scegli un url diverso.', 
]; 
0

これは私のソリューションでした。

まず、あなたのメッセージに識別子を設定します。

/** 
* @ORM\Entity 
* @ORM\Table(name="sites") 
* @UniqueEntity(
*  fields={"url"}, 
*  message="entity.site.unique" 
* ) 
*/ 
class Site 
{ 

その後LANGあたり1、次のように任意のファイル(messages.XX.yml)を作成します。

entity: 
    site: 
    unique: "Your message" 

このヘルプが欲しいです。

+0

MMM 。 "英語" => "イタリア語" –

+0

また、ymlを試しましたが、うまくいかないようです... –

関連する問題