不显示约束违规消息

时间:2019-09-26 14:28:18

标签: symfony constraints symfony4

我正在尝试一种上传多个文件的方法。

我在buildForm方法中添加了一个约束,以允许某些类型的文件。但是,当文件类型不好时,{{ form_errors(form.documents) }}不会显示错误消息。

这是我的表格:

TicketType:

->add('documents', CollectionType::class, array(
            'entry_type'        => TicketDocumentType::class,
            'prototype'         => true,
            'allow_add'         => true,
            'allow_delete'      => true,
            'by_reference'      => false,
            'required'          => false,
            'label'             => false,
        ))

TicketDocumentType:

->add('file', FileType::class, array(
                'label'     => false,
                'required'  => true,
                'constraints' => [
                    new File([
                        'maxSize' => '400k',
                        'mimeTypes' => [
                            "image/png",
                            "image/jpeg",
                            "image/jpg",
                            "image/gif",
                            "image/x-citrix-jpeg",
                            "image/x-citrix-png",
                            "image/x-png",
                            "application/pdf",
                            "application/x-pdf",
                            "application/vnd.ms-excel",
                            "application/msword",
                            "text/plain",
                            "application/zip"
                        ],
                        'mimeTypesMessage' => 'Les formats autorisés sont PDF, TXT, DOC, XLS, JPG, PNG, GIF, ZIP',
                    ])
                ]
            ));

经过研究,我发现可以将'error_bubbling' => true{{ form_errors(form) }}一起使用。

但是,我只希望有form.documents错误。这可能吗?

1 个答案:

答案 0 :(得分:0)

应该是直接定位文档的情况:

{{ form_errors(form.documents) }}

有关更多信息,请参见此处:https://symfony.com/doc/current/form/form_customization.html#form-rendering-functions