punjabideveloper/yii2-cropper

Yii2 + Cropper 集成扩展

安装次数: 5

依赖者: 0

建议者: 0

安全性: 0

星标: 0

关注者: 1

分支: 0

类型:yii2-extension

v2.5 2020-12-24 23:59 UTC

This package is auto-updated.

Last update: 2024-09-25 08:28:58 UTC


README

此扩展将 Cropper 与 Yii2 应用程序集成。它提供资产和小部件,以简化裁剪图像的上传。

用法

Yii2-Cropper 提供了一个小部件和一个继承自 yii\web\UploadedFile 的上传文件类。这允许您使用此扩展的本地语义上传文件。

在您的模型中

class Form extends \yii\base\Model
{
    public $image;

    public function rules()
    {
        return [
            ['image', 'image', 'enableClientValidation' => FALSE],
        ];
    }
}

重要:如果您在模型中使用 image 验证(推荐),您 必须 禁用客户端验证,如下所示。

在您的视图中

$form->field($model, 'image')
    ->widget(\fv\yii\Cropper\Widget::class)

在您的控制器中

if ($app->request->isPost) {
   $form->image = \fv\yii\Cropper\UploadedFile::getInstance($form, 'image');

   if ($form->validate())
   {
        $name = '/tmp/' . $form->image->baseName
            . '.' . $form->image->extension;
            
        $form->image->saveAs($name);
        $app->session->setFlash('success',
            'Saved to ' . Html::encode($name));
        return $this->refresh();
    }
}

注意

浏览器不会实际上传文件。因此,扩展永远不会知道发送给裁剪的文件名,并且为了与 yii\web\UploadedFile 兼容,会生成一个随机名称。

问题

请参阅 https://github.com/punjabideveloper/yii2-cropper