91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何解決yii2整合百度編輯器umeditor及umeditor圖片上傳問題

發布時間:2021-09-22 10:01:09 來源:億速云 閱讀:128 作者:小新 欄目:開發技術

這篇文章主要為大家展示了“如何解決yii2整合百度編輯器umeditor及umeditor圖片上傳問題”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“如何解決yii2整合百度編輯器umeditor及umeditor圖片上傳問題”這篇文章吧。

Yii2框架是如何整合百度編輯器umeditor的。

umeditor是啥,我只聽過ueditor,你這umeditor是不是盜版的東東喃?umeditor呢,說白了就是mini版的ueditor,按照百度官方說法,其實就是編輯器中的"短軟小",但是功能俱全。咳咳,咱們回歸正題。

首先勒,咱們先去官網下載一份mini版的ueditor umeditor,注意哦,是um editor。

下載下來解壓放到項目根目錄下面的 /css目錄下 命名為umeditor,具體位置各位隨意,后面能引用的到就行。

第二步,我們先去擴展下backend\assets\Appset類,哎呀我擦,為啥要擴展這么個玩意,跟咱們的umeditor整合啥關系勒,半路殺出個程咬金出來。這里擴展下這個類文件的意圖是為了接下來在文件中方便引入css js文件滴。

很簡單,在Appset方法中增加下面兩個方法即可

//定義按需加載JS方法,注意加載順序在最后 
public static function addScript($view, $jsfile) { 
$view->registerJsFile($jsfile, [AppAsset::className(), 'depends' => 'backend\assets\AppAsset']); 
} 
//定義按需加載css方法,注意加載順序在最后 
public static function addCss($view, $cssfile) { 
$view->registerCssFile($cssfile, [AppAsset::className(), 'depends' => 'backend\assets\AppAsset']); 
}

接下來,按照下面的配置即可。

先做說明,此處我們假設有一個文章article表,有一個內容content字段需要顯示為百度編輯器。

按照yii2的表單模型來看,我們修改article\_form.php文件中的content字段

<?= $form->field($model, 'content')->textarea(['style' => 'width:760px;height:500px;']) ?>

該文件引入Appset類并引入相關的css js文件如下

use backend\assets\AppAsset;
AppAsset::register($this);
AppAsset::addCss($this,'/css/umeditor/themes/default/css/umeditor.css');
AppAsset::addScript($this,'/css/umeditor/umeditor.config.js');
AppAsset::addScript($this,'/css/umeditor/umeditor.min.js');
AppAsset::addScript($this,'/css/umeditor/lang/zh-cn/zh-cn.js');

然后只需要在當前頁面底部注冊下面的js代碼即可實現

<?php $this->beginBlock('js-block') ?>
$(function () {
var um = UM.getEditor('article-content', {
});
});
<?php $this->endBlock() ?>
<?php $this->registerJs($this->blocks['js-block'], \yii\web\View::POS_END); ?>

關于article-content怎么來滴喃,這個就是我們要綁定的目標對象,即content。article-content是當前該對象的id標識。

ok,到此百度編輯器基本上整合完畢,現在趕快去添加一篇文章試試看吧,記得更新看看編輯器里面是否也有內容哦。

下面給大家介紹 yii2解決百度編輯器umeditor圖片上傳問題。

yii2框架整合了百度編輯器,因為文件上傳采用的是yii2自帶的UploadedFile,這就難免umeditor上傳不成功問題,解決問題的只需要兩個操作步驟,我們來看看具體實現

首先我們先把umeditor的配置搞好,這里只需要更改imageUrl配置項即可,我們修改其指向/tools/um-upload

那下一步自然是實現/tools/um-upload方法了,

按照ueditor的實現來看,這里我們上傳成功后只需要返回成功信息即可

use backend\models\Upload;
use yii\web\UploadedFile;
/**
* 百度umeditor上傳
*/
public function actionUmUpload ()
{
$model = new Upload();

if (Yii::$app->request->isPost) {

$model->file = UploadedFile::getInstance($model, 'file');

$dir = ‘文件保存目錄';
if (!is_dir($dir))
mkdir($dir);

if ($model->validate()) {
$fileName = $model->file->baseName . '.' . $model->file->extension;
$dir = $dir.'/'. $fileName;
$model->file->saveAs($dir);
$info = [
"originalName" => $model->file->baseName,
"name" => $model->file->baseName,
"url" => $dir,
"size" => $model->file->size,
"type" => $model->file->type,
"state" => 'SUCCESS',
];
exit(json_encode($info));
} 
}
}

特別提醒:上述返回的$info信息中state狀態只能是SUCCESS,區分大小寫

以上是“如何解決yii2整合百度編輯器umeditor及umeditor圖片上傳問題”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

垫江县| 泰兴市| 临沧市| 靖州| 咸阳市| 枣庄市| 新竹县| 德兴市| 比如县| 澜沧| 瑞金市| 万宁市| 姚安县| 霍林郭勒市| 裕民县| 准格尔旗| 林州市| 东安县| 古蔺县| 洛宁县| 那坡县| 青海省| 乌苏市| 龙口市| 临清市| 南京市| 鄂尔多斯市| 葵青区| 会同县| 东乌| 长汀县| 达孜县| 浦东新区| 铜川市| 姜堰市| 潞西市| 江城| 军事| 焦作市| 团风县| 九寨沟县|