symfonyバリデーターの単一のプロパティ値でUniqueEntityを検証する方法はありますか?
# Acme\Resources\config\validation.yml
Acme\DemoBundle\Entity\User:
constraints:
- Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity: { fields: username, message: This username is already taken}
properties:
username:
- NotBlank: { message: You must provide a username}
ユーザー登録フォームで検証を実行すると、完全に機能し、チェックNotBlank
しUniqueEntity
て違反を報告します。
validatePropertyValue
ただし、バリデーターを使用して、次のように各フィールド (ユーザーの入力として) で ajax 検証も実行します。
$violations = $this->validator->validatePropertyValue("Acme\DemoBundle\Entity\User", "username", $value);
var_dump($violations);
プロパティのユーザー名制約のみがチェックされます。uniqueEntity
制約に対してチェックすることはありません。