Symfony的验证器文档过时或回调注释的错误?

时间:2013-12-11 19:06:45

标签: symfony callback annotations validation

我使用this example添加一个回调方法,该方法由Symfony的验证程序调用:

/**
 * @Assert\Callback
 */
public function validatePassword(ExecutionContextInterface $context){...}

如果我运行此代码,我会收到错误消息:选项"方法"必须设置为约束Symfony \ Component \ Validator \ Constraints \ Callback"

在短暂的谷歌搜索后,我发现this注释在类名之前,如下所示:

/**
 * @Assert\Callback(methods={"validatePassword"})
 */
class User{...}

现在一切正常。所以我想知道这是一个错误还是Symfony的文档已经过时了?

1 个答案:

答案 0 :(得分:1)

您正在链接到“当前”文档,目前这些文档意味着Symfony 2.4。对于Symfony 2.3及更早版本,您必须将注释放在类上,如您所发现的那样。

请注意示例页面顶部的“警告”:

  

2.4版中的新功能:Symfony 2.4简化了Callback约束。有关旧版Symfony版本的使用示例,请参阅本文档页面的相应版本。

: - )