Download the PHP package cyhalothrin/yiiflow without Composer
On this page you can find all versions of the php package cyhalothrin/yiiflow. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download cyhalothrin/yiiflow
More information about cyhalothrin/yiiflow
Files in cyhalothrin/yiiflow
Informations about the package yiiflow
Yiiflow
Иногда необходимо прикрепить большие файлы к форме, при этом запрос может отправляться очень долго, и сервер может отклонить запрос, по причине того что истекло время или размер файла превысил допустимый размер. Yiiflow позволяет загружать файлы на сервер и сохранить их после отправки формы. Использует flow.js для отправки файлов. Отображает прогресс загрузки файлов, с возможностью отмены. Сохранена совместимость с yii\web\UploadedFile
.
Установка
Настройка
В контейнере приложения необходимо зарегистрировать Flow\ConfigInterface
и указать директорию сохранения временных файлов:
Подробнее о дополнительных настройках можно прочитать тут.
Использование
Для обработки загрузки файлов можно указать контроллер в конфигурации приложения:
или указать cyhalothrin\yiiflow\components\UploadAction
и cyhalothrin\yiiflow\components\DeleteAction
в любом вашем контроллере в actions()
.
Далее в форме установить виджет \cyhalothrin\yiiflowFlowFileInput
:
Для ActiveForm
:
После отправки формы загруженные файлы можно получить привычным для Yii способом:
или для модели:
Обратите внимание: методы для получения одного файла не работают, по крайней мере пока, но я не вижу в них смысла в контексте данного расширения.
Далее все операции по валидации и сохранению файлов идентичны для стандартного yii\web\UploadedFile
.
Очистка временных файлов
Фрагменты загружаемых файлов как и сами загруженные файлы хранятся в указанной в конфигурации директории. По каким-то причинам эти файлы могут быть не перемещены из этой директории, поэтому необходимо очищать ее. Для этого есть консольная команда, которую можно запускать через cron. Ее необходимо указать в конфигурации консольного приложения:
И запустить:
По умолчанию удаляются файлы старше двух суток, но это можно изменить через expirationTime
опцию контроллера.
All versions of yiiflow with dependencies
flowjs/flow-php-server Version ^1.0
bower-asset/flow.js Version ~2