我在Assert\Optional中放置了一个回调函数,但当我在Optional之外放置时,它没有被调用。它确实被调用,但如果选项参数不在请求中,我会得到字段遗漏错误。我想要的是,如果该参数在请求中,则应将其传递给回调进行自定义验证,如果不是,则不应生成缺少字段的错误。
下面是我正在尝试的代码,但它没有按预期工作。
"list_id"=>[
new Assert\Optional(
new Assert\NotBlank(
['message'=>$this->translator->trans("required")
]
),
new Assert\Type(['integer',
'message' => $this->translator->trans("integer")
]),
new Assert\Callback([$this, 'validateList']),
),
],
字符串
我尝试添加可选的字段验证与自定义验证回调
1条答案
按热度按时间b5buobof1#
字符串
如果我删除了其他验证,回调函数会工作,并且在字段不在请求数据中的情况下,我不会得到缺少字段的错误。