Laravel-admin修改图片上传时存入数据库的URL

文件位于 vendor\encore\laravel-admin\src\Form\Field\Image.php

<?php

namespace Encore\Admin\Form\Field;

use Symfony\Component\HttpFoundation\File\UploadedFile;

class Image extends File
{
    use ImageField;

    /**
     * {@inheritdoc}
     */
    protected $view = 'admin::form.file';

    /**
     *  Validation rules.
     *
     * @var string
     */
    protected $rules = 'image';

    /**
     * @param array|UploadedFile $image
     *
     * @return string
     */
    public function prepare($image)
    {
        if (request()->has(static::FILE_DELETE_FLAG)) {
            return $this->destroy();
        }

        $this->name = $this->getStoreName($image);

        $this->callInterventionMethods($image->getRealPath());

        $path = $this->uploadAndDeleteOriginal($image);

        $this->uploadAndDeleteOriginalThumbnail($image);
//将这里修改即可
//--start       dyushuo6230 2019-12-18
        return "/upload/" . $path;
//--end       dyushuo6230 2019-12-18
    }
}

————————————————
版权声明:本文为CSDN博主「哈佛凌晨」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:blog.csdn.net/dyushuo6230/article/...

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 6

年轻人, 不要改 vendor

3年前 评论
onley (楼主) 3年前
wenyu13 3年前
wenyu13 3年前
onley (楼主) 3年前

年轻人, 不要改 vendor

3年前 评论
onley (楼主) 3年前
wenyu13 3年前
wenyu13 3年前
onley (楼主) 3年前

自己自定义或者重写 image 组件是更好的做法

3年前 评论
onley (楼主) 3年前

改 vendor,下个接收的要嘛嘛列列呐

3年前 评论

你这样改了,在后台还能正常显示?

3年前 评论
onley (楼主) 3年前

// 修改文件上传路径和文件名 $form->file($column[, $label])->move($dir, $name);

3年前 评论
onley (楼主) 3年前
3年前 评论
onley (楼主) 3年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!