Symfony验证:首先是属性约束,然后是类约束



我正在使用Symfony 2.5,我的模型类如下:

/**
 * @UserAssertUserPasswordReset
*/
class ResetPassword {
/**
 * @var string
 * @AssertNotBlank()
 */
public $username;
/**
 * @var string
 * @AssertNotBlank()
 * @AssertDate
 */
public $birthday;
/**
 * @var string
 * @AssertNotBlank()
 */
public $plainSecurityAnswer;

function __toString()
{
    return $this->username . $this->birthday->format('Y-m-d H:i:s') . $this->plainSecurityAnswer;
}

}

此模型映射到 ResetFormType。现在我的意图:我怎么能说/配置,我首先希望传递属性约束。如果传递了所有属性约束(例如,没有字段为空),我希望调用@UserAssert\UserPasswordReset

目前,它始终验证属性和类约束。

问候++

我认为你可以使用像这样的GroupSequence验证器来做到这一点:

/**
 * @UserAssertUserPasswordReset(groups={"PasswordReset"})
 * @AssertGroupSequence({"Default", "PasswordReset"})
 */
class ResetPassword
{
    //----
}

在此模式下,只有在默认断言之后才会验证UserPasswordReset

在文档中,您将找到一些使用组序列的实现示例。

相关内容

最新更新