Forms 如果尚未设置Symfony表单验证图像,则需要Symfony表单验证图像
在Symfony2中,我有一个表单,其中包含预创建记录的图像上载 当表单第一次呈现时,不设置图像,并且在表单提交时必须设置图像。在随后的表单提交中,如果文件已上载且路径已存储,则表单提交应通过 我无法理解如何实现此条件验证。 我的表格包含Forms 如果尚未设置Symfony表单验证图像,则需要Symfony表单验证图像,forms,validation,symfony,Forms,Validation,Symfony,在Symfony2中,我有一个表单,其中包含预创建记录的图像上载 当表单第一次呈现时,不设置图像,并且在表单提交时必须设置图像。在随后的表单提交中,如果文件已上载且路径已存储,则表单提交应通过 我无法理解如何实现此条件验证。 我的表格包含 public function buildForm(FormBuilderInterface $builderInterface, array $options) { parent::buildForm($builderInterface, $opti
public function buildForm(FormBuilderInterface $builderInterface, array $options)
{
parent::buildForm($builderInterface, $options);
$builderInterface
->add('logoFile', 'file', array(
'required' => true,
))
// ...
}
但是,仅当实体上的特定字段未填充时,才应强制执行必需字段。您应该查看 就你而言,我认为:
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->addEventListener(FormEvents::/*event*/, function (FormEvent $event) {
$object = $event->getData();
$form = $event->getForm();
$form->add('logoFile', 'file', array(
'required' => !$object || !$object->getLogoFile(),
));
});
}
能满足你的需要吗