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

Validation Symfony验证:首先是属性约束,然后是类约束,validation,symfony,constraints,Validation,Symfony,Constraints,我使用的是Symfony 2.5,我的模型类如下: /** * @UserAssert\UserPasswordReset */ class ResetPassword { /** * @var string * @Assert\NotBlank() */ public $username; /** * @var string * @Assert\NotBlank() * @Assert\Date */ public $birthday; /** * @var strin

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

/**
 * @UserAssert\UserPasswordReset
*/
class ResetPassword {

/**
 * @var string
 * @Assert\NotBlank()
 */
public $username;

/**
 * @var string
 * @Assert\NotBlank()
 * @Assert\Date
 */
public $birthday;

/**
 * @var string
 * @Assert\NotBlank()
 */
public $plainSecurityAnswer;


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

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

目前,它总是验证属性和类约束


关于+++

我想你可以用这样的方法来做:

/**
 * @UserAssert\UserPasswordReset(groups={"PasswordReset"})
 * @Assert\GroupSequence({"Default", "PasswordReset"})
 */
class ResetPassword
{
    //----
}
在此模式下,
UserPasswordReset
仅在默认值断言后才会生效


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

非常感谢!这就是我要找的。该死的,我查了文档,但没读GroupSequences…-接受您的回答。很高兴能为您提供帮助:-)