0

バリデータ サービスの validateProperty に少し問題があります。

私の目的は、ハンドラーのプロセス機能中にフォームのフィールドに制約を追加することです。問題は、validateProperty メソッドに指定したインデックスを symfony が見つけられないというエラーが表示されることです。しかし、第一引数に渡されたオブジェクトの型と、第二引数に同名のプロパティが存在することを確認!

ハンドラーの私のコード:

$regex = new Regex([
    'pattern' => '#pattern#', 
    'match' => false, 
    'message' => "Error"]);

$this->validator->validateProperty($this->form->getData(), 'content', $regex);

(getData() は、フィールド $content がある Message タイプのエンティティを返します)

何が問題か知っていますか?

どうもありがとう。

便利なリンク: http://api.symfony.com/2.0/Symfony/Component/Validator/Validator.html#method_validateProperty

4

1 に答える 1

0

PHP の基本を確認する必要があります: http://php.net/manual/fr/function.array.php

'[' と ']' を使用してその場で配列を宣言することはできません。

validateProperty の 3 番目のパラメーターは、正規表現自体ではなく、検証グループの配列です。デフォルトでは空のままにしておきます...

于 2012-09-25T15:19:21.643 に答える