carono/yii2-file-upload

文件存储表

安装数量: 2,437

依赖项: 0

建议者: 0

安全性: 0

星标: 2

关注者: 2

分支: 1

开放问题: 0

类型:yii2-extension

1.2.3 2022-10-13 20:08 UTC

This package is auto-updated.

Last update: 2024-09-14 01:06:49 UTC


README

Scrutinizer Code Quality Latest Stable Version Total Downloads License

安装

  1. 创建迁移并从 carono\yii2file\FileUploadMigration 继承
class m170927_171858_fu extends \carono\yii2file\FileUploadMigration
{
    public $tableName = '{{%file_upload}}';
}
  1. 或者执行 yii migrate --migrationPath=@vendor/carono/yii2-file-upload/migrations

如何使用

  1. 在您的模型表中添加 file_upload 的特性 carono\yii2file\FileUploadTrait
  2. 之后,可以按照以下方式保存文件
    FileUpload::startUpload('@runtime/test.txt')->process();
    FileUpload::startUpload('http://example.com/file.txt')->process();
    FileUpload::startUpload(yii\web\UploadedFile $file)->process();

可以按顺序添加额外的属性

FileUpload::startUpload('@runtime/img.png')
->slug('user_avatar') // поле slug
->data(['id'=>1]) // произвольные данные, записываются в data как json
->name('user_avatar.png') // сохраним файл в базе с новым именем
->folder('@app/new_destination') // сохраним файл в новой папке, по умолчанию @app/files
->delete(false) // не удалять файл источник по завершению, по умолчанию - удаляем
->process(); // сохраним модель

特性的属性

特性的方法

特点

请注意,在重写 getRealFileName() 函数时,将影响保存新文件的名称,请参阅 carono\yii2file\Uploader 了解更多

不要忘记为存储添加时间添加行为 yii\behaviors\TimestampBehavior

由于错误时将抛出 Exception,因此必须将文件上传包裹在 try...catch 中

架构