Валидация для размера картинок.

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
rosswe
Сообщения: 95
Зарегистрирован: 2017.01.09, 03:27
Откуда: Ставрополь
Контактная информация:

Валидация для размера картинок.

Сообщение rosswe »

Доброго времени.

В профиле отображается аватар разных размеров в зависимости от того какого размера аватар был загружен.

Код: Выделить всё

     <?= $form->field($model, 'avatar')->widget(FileInput::class, [
                                'class' => 'col-md-15',
                                'options' => ['accept'=>'image/*'],
                                'pluginOptions' => [
                                   'allowedFileExtensions'=> ['jpg','gif','png'],
                                    'browseClass' => 'btn btn-primary btn-block',
                                    'browseIcon' => '<i class="glyphicon glyphicon-camera"></i> ',
                                    'browseLabel' =>  \Yii::t('userextended', 'Изменить аватар'),
                                    'previewFileType' => 'image',
                                    'showCaption' => false,
                                    'showRemove' => false,
                                    'showUpload' => true,
                                ]
                            ])->label(false) ?>
Добавлял этот валидатор

Код: Выделить всё

['primaryImage', 'image', 'extensions' => 'png, jpg',
        'minWidth' => '', 'maxWidth' => '',
        'minHeight' => '', 'maxHeight' => '',
    ],
как в форму так и в rules, пробовал устанавливать размеры по разному пока безрезультатно ,

Как заставить валидацию JS обрабатывать размеры ?,
так-же как она обрабатывает расширения с помощью этого кода

Код: Выделить всё

'allowedFileExtensions'=> [ 'jpg','gif','png'],
Последний раз редактировалось rosswe 2019.04.28, 18:02, всего редактировалось 1 раз.
rosswe
Сообщения: 95
Зарегистрирован: 2017.01.09, 03:27
Откуда: Ставрополь
Контактная информация:

Re: Валидация для размера картинок.

Сообщение rosswe »

Добавил так:

'minImageWidth' => ['50'],
'minImageHeight' => ['50'],
'maxImageWidth' => ['250'],
'maxImageHeight' => ['250'],

теперь JS ругается, но файл почему-то всё равно загружает.

Странно, например если дописать это свойство

'maxFileSize' => ['100'],

и картинка будет весом более 100 б. то кнопка загрузки становится не кликабельна.
Ответить