Сообщения о нарушениях ограничений не отображаются - PullRequest
0 голосов
/ 26 сентября 2019

Я пытаюсь создать способ загрузки нескольких файлов.

Я добавляю ограничение в метод 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 голосов
/ 26 сентября 2019

Должен быть только случай таргетинга документов напрямую:

{{ form_errors(form.documents) }}

Для получения дополнительной информации см. Здесь: https://symfony.com/doc/current/form/form_customization.html#form-rendering-functions

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...