0

特性でコールバック検証を使用したいと考えています。例えば:

<?php
namespace Vendor\Bundle\Entity;

use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
use Symfony\Component\Validator\ExecutionContext;

/**
 * @Assert\Callback(methods={"validateReview"}, groups={"review"})
 */
trait ReviewableEntity
{
    //...

    /**
     * @param ExecutionContext $context
     */
    public function validateReview(ExecutionContext $context)
    {

        //...

        $context->addViolationAt('review', 'Review must be valid', [], null);

        //...

    }

    //...

}

しかし、うまくいかないようです。これが可能かどうか誰にもわかりますか?

4

2 に答える 2

1

同じ質問があります。Google経由でこれを見つけました...だから:私は問題を再現しました。こっちも一緒。

追加情報: 特性内のプロパティに @Assert アノテーションを付けると、機能します。コールバックだけが機能しません。

于 2013-05-24T14:05:11.533 に答える