答案 0 :(得分:3)
setRequired()似乎是冗余功能,因为 setAllowEmpty 非常相似。我认为这是一个问题。
但是,除了验证器之外,您还可以使用setRequired(flag)
来指定需要元素。默认情况下,此标志为false
。结合默认为setAllowEmpty(flag)
的{{1}}和默认为true
的{{1}},您可以修改验证过程的行为:
setAutoInsertNotEmptyValidator(flag)
将针对此元素的验证程序进行验证true
添加setAllowEmpty(false)
验证程序。因此,如果没有传递任何值,我们会通知用户并阻止执行其他验证程序,因为我们知道这是无效数据所以setAllowEmpty(false)默认保留所有标志与setRequired(true)和setAutoInsertNotEmptyValidator(false)相同;由于命名
,这很令人困惑希望有所帮助;)
答案 1 :(得分:1)
尝试使用
$form->isValidPartial($partialData)
这只验证$ partialData变量中存在的键。这可能只是你需要的东西。