laravel-admin集成ueditor编辑器的图片列表显示问题解决方法

laravel-admin集成ueditor编辑器的图片列表显示问题解决方法

内容导读

收集整理的这篇技术教程文章主要介绍了laravel-admin集成ueditor编辑器的图片列表显示问题解决方法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4005字,纯文字阅读大概需要6分钟

内容图文

这篇文章主要介绍了关于laravel-admin集成ueditor编辑器的图片列表显示问题解决方法,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

laravel-admin集成ueditor推荐使用laravel-u-editor,它是ueditor的laravel composer版本。基于UEditor 1.4.3.3开发,支持en、zh_CN、zh_TW,并且支持本地和七牛云存储,默认为本地上传 public/uploads

安装

composer require stevenyangecho/laravel-u-editor然后在config/app.php的providers下增加一行StevenyangechoUEditorUEditorServiceProvider::class执行php artisan vendor:publish

基本配置

1.增加组件文件:app/Admin/Extensions/Form/uEditor.php:<?phpnamespace AppAdminExtensionsForm;use EncoreAdminFormField;/** * 百度编辑器 * Class uEditor * @package AppAdminExtensionsForm */class uEditor extends Field{

// 定义视图

protected $view = 'admin.uEditor';

// css资源

protected static $css = [];

// js资源

protected static $js = [



'laravel-u-editor/ueditor.config.js',



'laravel-u-editor/ueditor.all.min.js',



'laravel-u-editor/lang/zh-cn/zh-cn.js'

];

public function render()

{



$cs=csrf_token();



$this->script = <<<EOT



//解决第二次进入加载不出来的问题



UE.delEditor("ueditor");



// 默认id是ueditor



var ue = UE.getEditor('ueditor');



 ue.ready(function () {





ue.execCommand('serverparam', '_token', '$cs');



});EOT;



return parent::render();

}}2. 增加视图文件: resources/views/admin/uEditor.blade.php<p class="form-group {!! !$errors->has($errorKey) ?: 'has-error' !!}">

<label for="{{$id}}" class="col-sm-2 control-label">{{$label}}</label>

<p class="col-sm-8">



@include('admin::form.error')



{{-- 这个style可以限制他的高度,不会随着内容变长 --}}



<textarea type='text/plain' style="height:400px;" id='ueditor' id="{{$id}}" name="{{$name}}" placeholder="{{ $placeholder }}" {!! $attributes !!}
class='ueditor'>





{!! old($column, $value) !!}



</textarea>



@include('admin::form.help-block')

</p></p>3. 然后注册进laravel-admin,在app/Admin/bootstrap.php中添加以下代码:use AppAdminExtensionsFormuEditor;EncoreAdminForm::extend('ueditor', uEditor::class);4. 调用:$form->ueditor('content', '内容')->rules('required');

配置七牛服务

打开文件configUEditorUpload.php配置七牛配置参数// 将下一行注释//



'mode'=>'local',//上传方式,local 为本地
 qiniu 为七牛



'mode'=>'qiniu',//上传方式,local 为本地
 qiniu 为七牛



//七牛配置,若mode='qiniu',以下为必填.



'qiniu'=>[





'accessKey'=>'。。。',





'secretKey'=>'。。。',





'bucket'=>'。。。',





'url'=>'。。。',//七牛分配的CDN域名,注意带上http://



]

],

修复上传界面中无法管理文件列表的问题

vendorstevenyangecholaravel-u-editorsrcListsQiniu.phppublic function getList()

{



$size = $this->request->get('size', $this->listSize);



$start = $this->request->get('start', '');



$auth = new Auth(config('UEditorUpload.core.qiniu.accessKey'), config('UEditorUpload.core.qiniu.secretKey'));



$bucketManager = new BucketManager($auth);



// 注释掉下面的行//



list($items, $marker, $error) = $bucketManager->listFiles(config('UEditorUpload.core.qiniu.bucket'), $this->path, $start, $size);// 下面三行是修改的



$result1 = $bucketManager->listFiles(config('UEditorUpload.core.qiniu.bucket'), $this->path, $start, $size);



$size = count($result1);



// 如果不取到items,报找不到key的错误



$items = $result1[0]['items'];// 判断是否错误



if ($size > 2) {





return [







"state" => $error->message(),







"list" => array(),







"start" => $start,







"total" => 0





];



}



if(empty($items)){





return [







"state" => "no match file",







"list" => array(),







"start" => $start,







"total" => 0





];



}



$files=[];//



dd($items['items']);



foreach ($items as
$v) {





if (preg_match("/.(" . $this->allowFiles . ")$/i", $v['key'])) {







$files[] = array(









'url' =>rtrim(config('UEditorUpload.core.qiniu.url'),'/').'/'.$v['key'],









'mtime' => $v['mimeType'],







);





}



}



if(empty($files)){





return [







"state" => "no match file",







"list" => array(),







"start" => $start,







"total" => 0





];



}



/* 返回数据 */



$result = [





"state" => "SUCCESS",





"list" => $files,





"start" => $start,





"total" => count($files)



];



return $result;

}

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

解决laravel-admin中select在form编辑时不能自动选中当前的值的问题

gitbash PHP执行输出中文乱编解决方式

以上就是laravel-admin集成ueditor编辑器的图片列表显示问题解决方法的详细内容,更多请关注Gxl网其它相关文章!

内容总结

以上是为您收集整理的laravel-admin集成ueditor编辑器的图片列表显示问题解决方法全部内容,希望文章能够帮你解决laravel-admin集成ueditor编辑器的图片列表显示问题解决方法所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。

内容备注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。


本文关键词:

联系我们

在线咨询:点击这里给我发消息

邮件:w420220301@qq.com