0

モデルにカスタム検証関数を作成しました。各ルール(およびその後の検証関数)は、$validation配列で定義されているように1つのエラーメッセージを返すことができることを知っています。しかし、私の関数は複数の条件をチェックし、より一般的なものではなく、より調整された条件付きモデル検証エラーメッセージを返したいと思います。たとえば、ルールメッセージとして「条件AまたはBに合格していません」ではなく、「条件Aに合格しました」、「条件Bに合格しました」、「合格していません」と表示したい場合があります。どちらが違反されたかに応じて、条件AおよびB」。それは可能ですか?もしそうなら、どうすればいいですか?

4

1 に答える 1

0

beforeValidate または beforeSave コールバックでそれらを確認し、そこに呼び出すことができます

$this->invalidate('field_name1', 'error_message1');
$this->invalidate('field_name2', 'error_message2');

このようにして、必要な柔軟性を実現できます。

于 2012-12-23T19:42:53.543 に答える