marqu3s/yii2-summernote

Yii2 Summernote 小部件。基于 Bootstrap 的超级简单 WYSIWYG 编辑器

安装次数: 73,551

依赖者: 9

建议者: 0

安全: 0

星标: 17

关注者: 5

分支: 33

类型:yii2-extension

v1.0.2 2016-01-15 00:00 UTC

This package is auto-updated.

Last update: 2024-08-24 19:58:47 UTC


README

Yii2 框架Summernote 小部件。基于 Bootstrap 的超级简单 WYSIWYG 编辑器

安装

Composer

推荐通过 Composer 安装此扩展。

运行以下命令之一

php composer.phar require marqu3s/yii2-summernote "dev-master"

"marqu3s/yii2-summernote": "dev-master"

将以下内容添加到 composer.json 文件的 require 部分

使用方法

<?= $form->field($model, 'content')->widget(Summernote::className(), [
    'clientOptions' => [
        ...
    ]
]); ?>

<?= Summernote::widget([
    'name' => 'editor_id',
    'clientOptions' => [
        ...
    ]
]); ?>

直接上传到 Amazon S3

要将编辑器中插入的图片上传到 S3,您需要配置一些选项。

<?= Summernote::widget([
    'uploadToS3' => true,
    'signEndpoint' => '/<controller>/sign-aws-request?v4=true',
    'bucket' => 'S3-BUCKET-NAME',
    //'folder' => '',
    'folder' => new \yii\web\JsExpression("function() { return $('#aFormFieldId').val() + '/'; }"),
    'filenamePrefix' => "'{$model->id}-'",
    'maxFileSize' => 1024000,
    'expiration' => gmdate('Y-m-d\TH:i:s.000\Z', strtotime('+5 minutes')),
    'clientOptions' => [
        ...
    ]
]); ?>

然后,在您的控制器中,配置一个动作作为 signEndpoint,以便对上传图片的 POST 请求进行签名。

public function actions()
{
   return [
      'sign-aws-request' => [
          'class' => 'common\actions\SignAwsRequestAction',
          'clientPrivateKey' => 'AWS-KEY',
          'clientPrivateSecret' => 'AWS-SECRET',
          'expectedBucketName' => 'BUCKET-NAME',
          'expectedHostName' => 'BUCKET-NAME',
          'expectedMaxSize' => 'MAX-FILE-SIZE'
      ]
   ];
}

请参阅 clientOptions

原作者

Aleksandr Zelenin,电子邮件: aleksandr@zelenin.me

更新者

João Marques,电子邮件: joao@jjmf.com