联系官方销售客服

1835022288

028-61286886

开发框架 版主:迅睿框架研发组
如何自动让上传的第一张图自动添加为缩略图?
类型:迅睿CMS 更新时间:2020-06-04 09:04:06

请教一下各位,如何自动让上传的第一张图自动添加为缩略图?

image

回帖
  • 开黑吗我玩辅助
    #1楼    开黑吗我玩辅助
    2020-06-03 22:39:53
    Chrome 0
    这个是模块,可以使用继承法,
  • #2楼    迅睿框架创始人
    2020-06-03 22:41:23
    Google Pixel 手机 0
    对的,可以继承类的方法实现
  • 维嘉
    #3楼    维嘉
    2020-06-03 22:42:42
    Chrome 0
    开黑吗我玩辅助 感谢回答,我纯小白,你给我思路,我也写不出来.....能否详细点呀
  • #4楼    迅睿框架创始人
    2020-06-03 22:45:25
    Google Pixel 手机 0

    我们以Demo模块为例,新建App/Demo/Models/Content.php

    假设你的图片字段是tp,files类型,主表字段

    <?php namespace Phpcmf\Model\Demo;
    
    // 模块内容模型类
    
    class Content extends \Phpcmf\Model\Content {
    
        // 内容发布之前
        public function _content_post_before($id, $data, $old) {
        
            if (!$data[1]['thumb']) {
                $tp = dr_string2array($data[1]['tp']);// 主表字段是1,附表是0,,tp是字段名称,需要自己改
                if ($tp[0]['file']) {
                    $data[1]['thumb'] = $tp[0]['file'];
                }
            }
        
            return $data;
        }
        
    }


    参考文档:《重写内容Content类》

  • 维嘉
    #5楼    维嘉
    2020-06-03 23:09:01
    Chrome 0
    回复迅睿框架创始人
    image
    老大,你好,请问下我是副表,是这样写吗?然后这个文件放在dayrui\App\Photo\Models文件夹下对吗?我没能调用出来
  • #6楼    迅睿框架创始人
    2020-06-03 23:13:33
    Chrome 0

    image
    两个地方需要改,我代码里面备注好了,只改一行的1和0,你居然全部都改了
  • 眼镜
    #7楼    眼镜
    2020-06-03 23:19:18
    Chrome 0
    <?php namespace Phpcmf\Model\Demo;
    
    // 模块内容模型类
    
    class Content extends \Phpcmf\Model\Content {
    
        // 内容发布之前
        public function _content_post_before($id, $data, $old) {
        
            if (!$data[1]['thumb']) {
                $tp = dr_string2array($data[0]['tp']);// 主表字段是1,附表是0,,tp是字段名称,需要自己改
                if ($tp[0]['file']) {
                    $data[1]['thumb'] = $tp[0]['file'];
                }
            }
        
            return $data;
        }
        
    }
  • 维嘉
    #8楼    维嘉
    2020-06-03 23:21:40
    Chrome 0
    回复迅睿框架创始人我这样改过,也调用不出来。麻烦您再看下了,谢谢
    image

    image

    image
  • #9楼    迅睿框架创始人
    2020-06-03 23:26:30
    Chrome 0
    <?php namespace Phpcmf\Model\Photo;
    
    // 模块内容模型类
    
    class Content extends \Phpcmf\Model\Content {
    
        // 内容发布之前
        public function _content_post_before($id, $data, $old) {
        
            if (!$data[1]['thumb']) {
                $tp = dr_string2array($data[0]['images']);// 主表字段是1,附表是0,,tp是字段名称,需要自己改
                if ($tp[0]['file']) {
                    $data[1]['thumb'] = $tp[0]['file'];
                }
            }
        
            return $data;
        }
        
    }
    理论上不会有错,虽然我没试过
  • 维嘉
    #10楼    维嘉
    2020-06-03 23:40:11
    Chrome 0
    回复迅睿框架创始人还是没能调用出来,我明天再试试吧,感谢这么晚还在解答,您也早点休息吧
  • #11楼    迅睿框架创始人
    2020-06-03 23:42:26
    Chrome 0
    <?php namespace Phpcmf\Model\Photo;
    
    // 模块内容模型类
    
    class Content extends \Phpcmf\Model\Content {
    
        // 内容发布之前
        public function _content_post_before($id, $data, $old) {
        
            if (!$data[1]['thumb']) {
                $tp = dr_string2array($data[0]['images']);// 主表字段是1,附表是0,,tp是字段名称,需要自己改
                var_dump($tp);exit;
                if ($tp[0]['file']) {
                    $data[1]['thumb'] = $tp[0]['file'];
                }
            }
        
            return $data;
        }
        
    }
    试试这句,保存时会弹出故障,你把故障代码截图看看
  • 维嘉
    #12楼    维嘉
    2020-06-03 23:48:34
    华为手机 0
    电脑已经关了,我后续再回复,感谢帮助
  • #13楼    迅睿框架创始人
    2020-06-04 00:06:12
    Chrome 0
    <?php namespace Phpcmf\Model\Photo;
    
    // 模块内容模型类
    
    class Content extends \Phpcmf\Model\Content {
    
        // 内容发布之前
        public function _content_post_before($id, $data, $old) {
    
            if (!$data[1]['thumb']) {
                $tp = dr_string2array($data[0]['images']);// 主表字段是1,附表是0,,tp是字段名称,需要自己改
                if ($tp['file'][0]) {
                    $data[1]['thumb'] = $tp['file'][0];
                }
            }
    
            return $data;
        }
    
    }
    我试了下,是我写错了
    满意答案
  • 维嘉
    #14楼    维嘉
    2020-06-04 09:04:06
    Chrome 0
    迅睿框架创始人:测试可以了,感谢这么晚的帮助,这精神值得每一个创业者学习!