zfbase/zfe-files

Единая точка загрузки и управления файлами для приложений на ZFE

v1.0.0-rc.9 2021-04-22 20:59 UTC

README

ZFE Files включен в зависимости ZFE начиная с версии 1.35.

В настоящий момент необходимо включения React в проект и настройка компиляции в проекте.

Подключение

Если вы начинаете проект на ZFE Skeleton версии 1.35 или старше, подключение уже выполнено.

1.Добавить модель для файлов

Рекомендованная схема модели: assets/schema/Files.yml (assets/schema/Files.sql).

Модель должна реализовывать интерфейс ZfeFiles_UserFileInterface.

Пример модели: example/models/Files.php.

Название модели для хранения файлов тоже может быть любым. Их даже может быть несколько.

2. Добавить контроллер для управления файлами

Контроллер может быть любым. Их тоже может быть несколько.

Пример контроллера: examples/controllers/FilesController.php.

3. Разрешить доступ к контроллеру для управления файлами

acl.resources.allow.files.all = user

4. Рекомендуется указать настройки по умолчанию

files.root = DATA_PATH "/files"
webserver = "nginx"

Использование

На примере подключения к статьям.

Добавить в модель схему использования файлов

Использующая файлы модель должна реализовывать интерфейс ZfeFiles_Manageable, позволяющий прикреплять файлы и управлять ими.

Пример модели использующей файлы: examples/models/Items.php.

Подключить элемент управления файлами в форму

class Application_Form_Edit_Article extends ZFE_Form_Edit_AutoGeneration
{
    protected $_modelName = Articles::class;

    public function init()
    {
        parent::init();

        $this->addFileAjaxElement('file');
    }
}