Laravel-admin集成Ueditor 自定义附件上传时的文件名

一、安装Laravel-Ueditor

1. 执行composer命令

composer require codingyu/ueditor

2. 发布资源

php artisan vendor:publish --provider=Codingyu\LaravelUEditor\UEditorServiceProvider

3. 修改config/admin.php 增加扩展

'extensions' => [
    'ueditor' => [
        // 如果要关掉这个扩展,设置为false
        'enable' => true,
        // 编辑器的前端配置 参考:http://fex.baidu.com/ueditor/#start-config
        'config' => [
            'initialFrameHeight' => 400, // 例如初始化高度
        ],
        // 'field_type' => '自定义名字'
    ]
],

4. 修改config/ueditor.php

配置里面有详细注释,包含文件大小、格式、路径等

二、在form表单中使用

$form->UEditor('content', '内容')->required();

三、自定义附件上传时的文件名

1. 执行命令,增加listener类

php artisan make:listener UploadingNotification

2. 修改app/Listeners/UploadingNotification.php

<?php

namespace App\Listeners;

use Codingyu\LaravelUEditor\Events\Uploading;

class UploadingNotification
{
    /**
     * Create the event listener.
     *
     * @return void
     */
    public function __construct()
    {
        //
    }

    /**
     * Handle the event.
     *
     * @param object $event
     * @return void
     */
    public function handle(Uploading $event)
    {
        $old_name = $event->file->getClientOriginalName(); //旧文件名
        $new_name = md5(uniqid()) . '.' . $event->file->getClientOriginalExtension(); //新文件名
        return $event->filename = str_replace($old_name, $new_name, $event->filename); //替换文件名
    }
}

3. 修改app/Providers/EventServiceProvider.php

use Codingyu\LaravelUEditor\Events\Uploading;

protected $listen = [
	//监听Laravel-Ueditor的Uploading事件
    Uploading::class => [
        UploadingNotification::class
    ]
];
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值