ThinkCMF后台页面模板demo

2023-10-27

index列表页面模板

<include file="public@header"/>
</head>
<body>
<!--页面内容-->
<div class="wrap js-check-wrap">
    <!--页面内导航开始-->
    <ul class="nav nav-tabs">
        <li class="active"><a href="javascript:;">所有文章</a></li>
        <li><a href="{:url('AdminIndex/add')}">添加文章</a></li>
    </ul>
    <!--页面内导航结束-->
    <!--页面搜索-->
    <form class="well form-inline margin-top-20" method="post" action="{:url('AdminIndex/index')}">
        标题:
        <input type="text" class="form-control" name="keyword" style="width: 200px;"
               value="{$keyword|default=''}" placeholder="请输入关键字">
        <button class="btn btn-primary">搜索</button>
    </form>
    <!--页面搜索结束-->
    <!--页面列表主体-->
    <form class="js-ajax-form" action="" method="post">
        <!--列表操作多选-->
        <div class="table-actions">
            <button class="btn btn-danger btn-sm js-ajax-submit" type="submit" data-action="{:url('AdminIndex/delete')}"
                    data-subcheck="true" data-msg="{:lang('DELETE_CONFIRM_MESSAGE')}">{:lang('DELETE')}
            </button>
            <!--<button class="btn btn-primary btn-sm js-ajax-submit" type="submit"
                    data-action="{:url('AdminArticle/publish',array('yes'=>1))}" data-subcheck="true">发布
            </button>
            <button class="btn btn-primary btn-sm js-ajax-submit" type="submit"
                    data-action="{:url('AdminArticle/publish',array('no'=>1))}" data-subcheck="true">取消发布
            </button>
            <button class="btn btn-primary btn-sm js-ajax-submit" type="submit"
                    data-action="{:url('AdminArticle/top',array('yes'=>1))}" data-subcheck="true">置顶
            </button>
            <button class="btn btn-primary btn-sm js-ajax-submit" type="submit"
                    data-action="{:url('AdminArticle/top',array('no'=>1))}" data-subcheck="true">取消置顶
            </button>
            <button class="btn btn-primary btn-sm js-ajax-submit" type="submit"
                    data-action="{:url('AdminArticle/recommend',array('yes'=>1))}" data-subcheck="true">推荐
            </button>
            <button class="btn btn-primary btn-sm js-ajax-submit" type="submit"
                    data-action="{:url('AdminArticle/recommend',array('no'=>1))}" data-subcheck="true">取消推荐
            </button>-->
        </div>
        <!--列表操作多选结束-->

        <!--列表内容-->
        <table class="table table-hover table-bordered table-list">
            <!--头部展示-->
            <thead>
            <tr>
                <th width="16">
                    <label>
                        <input type="checkbox" class="js-check-all" data-direction="x" data-checklist="js-check-x">
                    </label>
                </th>
                <th width="100">ID</th>
                <th>标题</th>
                <th width="80">作者</th>
                <th width="160">发布时间</th>
                <th width="80">状态</th>
                <th width="120">操作</th>
            </tr>
            </thead>
            <!--头部展示结束-->
            <!--列表主体内容-->
            <foreach name="data" item="vo">
                <tr>
                    <td>
                        <input type="checkbox" class="js-check" data-yid="js-check-y" data-xid="js-check-x" name="ids[]"
                               value="{$vo.id}">
                    </td>
                    <td>{$vo.id}</td>
                    <td>
                        <a href="{:url('portal/page/index',array('id'=>$vo['id']))}" target="_blank">
                            {$vo.post_title}
                        </a>
                    </td>
                    <td>{$vo.user_nickname}</td>
                    <td>
                        <empty name="vo.published_time">
                            未发布
                            <else/>
                            {:date('Y-m-d H:i',$vo['published_time'])}
                        </empty>
                    </td>
                    <td>
                        <notempty name="vo.post_status">
                            <a data-toggle="tooltip" title="已发布"><i class="fa fa-check"></i></a>
                            <else/>
                            <a data-toggle="tooltip" title="未发布"><i class="fa fa-close"></i></a>
                        </notempty>
                    </td>
                    <td>
                        <a class="btn btn-xs btn-primary" href="{:url('AdminIndex/edit',array('id'=>$vo['id']))}">{:lang('EDIT')}</a>
                        <a class="btn btn-xs btn-danger js-ajax-delete" href="{:url('AdminIndex/delete',array('id'=>$vo['id']))}">{:lang('DELETE')}</a>
                    </td>
                </tr>
            </foreach>
            <!--列表主体内容结束-->
        </table>
        <!--列表内容结束-->
        <!--列表分页-->
        <div class="pagination">{$page}</div>
        <!--列表分页结束-->
    </form>
    <!--页面列表主体结束-->
</div>

<!--js操作-->
<script src="__STATIC__/js/admin.js"></script>
<!--js操作结束-->
<script>
    $(function () {
        //异步加载js、css ,别名或者绝对地址
        Wind.use('layer',function(){});
        Wind.css('layer',function(){})
    });
</script>
</body>
</html>

add添加页面模板

<include file="public@header"/>
<style type="text/css">
    .pic-list li {
        margin-bottom: 5px;
    }
</style>
<!--相册的js-->
<script type="text/html" id="photos-item-tpl">
    <li id="saved-image{id}">
        <input id="photo-{id}" type="hidden" name="photo_urls[]" value="{filepath}">
        <input class="form-control" id="photo-{id}-name" type="text" name="photo_names[]" value="{name}"
               style="width: 200px;" title="图片名称">
        <img id="photo-{id}-preview" src="{url}" style="height:36px;width: 36px;"
             onclick="imagePreviewDialog(this.src);">
        <a href="javascript:uploadOneImage('图片上传','#photo-{id}');">替换</a>
        <a href="javascript:(function(){$('#saved-image{id}').remove();})();">移除</a>
    </li>
</script>
<!--相册的js结束-->
<!--附件的js-->
<script type="text/html" id="files-item-tpl">
    <li id="saved-file{id}">
        <input id="file-{id}" type="hidden" name="file_urls[]" value="{filepath}">
        <input class="form-control" id="file-{id}-name" type="text" name="file_names[]" value="{name}"
               style="width: 200px;" title="文件名称">
        <a id="file-{id}-preview" href="{preview_url}" target="_blank">下载</a>
        <a href="javascript:uploadOne('文件上传','#file-{id}','file');">替换</a>
        <a href="javascript:(function(){$('#saved-file{id}').remove();})();">移除</a>
    </li>
</script>
<!--附件的js结束-->
</head>
<body>
<div class="wrap js-check-wrap">
    <!--页面内导航-->
    <ul class="nav nav-tabs">
        <li><a href="{:url('AdminIndex/index')}">{:lang('ADMIN_TAG_INDEX')}</a></li>
        <li class="active"><a href="{:url('AdminIndex/add')}">{:lang('ADMIN_TAG_ADD')}</a></li>
        <li><a  href="{:url('nav/edit')}" >{:lang('ADMIN_NAV_EDIT')}</a></li>
    </ul>
    <!--页面内导航结束-->
    <!--表单提交开始-->
    <form method="post" class="form-horizontal js-ajax-form margin-top-20" action="{:url('AdminIndex/addPost')}">

        <!--提交的表单字段-->
        <div class="form-group">
            <label class="col-sm-2 control-label"><span class="form-required">*</span>名称:</label>
            <div class="col-md-6 col-sm-10">
                <input type="text" class="form-control" name="name" value="">
            </div>
        </div>
        <!--提交的表单字段结束-->
<div class="form-group">
            <label for="input-description">描述</label>
            <div>
                <textarea class="form-control" name="post[description]" id="input-description"></textarea>
            </div>
        </div>

       <div class="form-group">
            <label class="col-sm-2 control-label">缩略图</label>
            <div class="col-md-6 col-sm-10">
                <input type="hidden" name="more[thumbnail]" class="form-control"
                       id="js-thumbnail-input">
                <div>
                    <a href="javascript:uploadOneImage('图片上传','#js-thumbnail-input');">
                        <img src="__TMPL__/public/assets/images/default-thumbnail.png"
                             id="js-thumbnail-input-preview"
                             width="135" style="cursor: pointer"/>
                    </a>
                </div>
            </div>
        </div>

        <div class="form-group">
            <label class="col-sm-2 control-label">内容:</label>
            <div class="col-md-6 col-sm-10">
                <script type="text/plain" id="content" name="content"></script>
            </div>
        </div>

        <tr>
            <th>相册</th>
            <td>
                <ul id="photos" class="pic-list list-unstyled form-inline"></ul>
                <a href="javascript:uploadMultiImage('图片上传','#photos','photos-item-tpl');"
                   class="btn btn-default btn-sm">选择图片</a>
            </td>
        </tr>

        <tr>
            <th>附件</th>
            <td>
                <ul id="files" class="pic-list list-unstyled form-inline">
                </ul>
                <a href="javascript:uploadMultiFile('附件上传','#files','files-item-tpl','file');"
                   class="btn btn-sm btn-default">选择文件</a>
            </td>
        </tr>

        <tr>
            <th>音频</th>
            <td class="form-inline">
                <input id="file-audio" class="form-control" type="text" name="post[more][audio]"
                       value="{$post.more.audio|default=''}" placeholder="请上传音频文件" style="width: 200px;">
                <notempty name="post.more.audio">
                    <a id="file-audio-preview" href="{:cmf_get_file_download_url($post.more.audio)}"
                       target="_blank">下载</a>
                </notempty>

                <a href="javascript:uploadOne('文件上传','#file-audio','audio');">上传</a>
            </td>
        </tr>

        <tr>
            <th>视频</th>
            <td class="form-inline">
                <input id="file-video" class="form-control" type="text" name="post[more][video]"
                       value="{$post.more.video|default=''}" placeholder="请上传视频文件" style="width: 200px;">
                <notempty name="post.more.video">
                    <a id="file-video-preview" href="{:cmf_get_file_download_url($post.more.video)}"
                       target="_blank">下载</a>
                </notempty>
                <a href="javascript:uploadOne('文件上传','#file-video','video');">上传</a>
            </td>
        </tr>



        <div class="col-sm-offset-2 col-sm-10">
            <button type="submit" class="btn btn-primary js-ajax-submit">{:lang("SAVE")}</button>
            <a class="btn btn-default" href="__URL__">返回</a>
        </div>
    </form>
    <!--表单提交结束-->
</div>
<script src="__STATIC__/js/admin.js"></script>
<!--编辑器的js开始-->
<script type="text/javascript">
    //编辑器路径定义
    var editorURL = GV.WEB_ROOT;
</script>
<script type="text/javascript" src="__STATIC__/js/ueditor/ueditor.config.js"></script>
<script type="text/javascript" src="__STATIC__/js/ueditor/ueditor.all.min.js"></script>
<script type="text/javascript">
    $(function () {

        editorcontent = new baidu.editor.ui.Editor();
        editorcontent.render('content');
        try {
            editorcontent.sync();
        } catch (err) {
        }
        /*缩略图的js*/
        $('.btn-cancel-thumbnail').click(function () {
            $('#thumbnail-preview').attr('src', '__TMPL__/public/assets/images/default-thumbnail.png');
            $('#thumbnail').val('');
        });

    });
</script>
<!--编辑器的js结束-->
</body>
</html>

edit编辑页面模板

<include file="public@header"/>
<style type="text/css">
    .pic-list li {
        margin-bottom: 5px;
    }
</style>
<!--相册js-->
<script type="text/html" id="photos-item-tpl">
    <li id="saved-image{id}">
        <input id="photo-{id}" type="hidden" name="photo_urls[]" value="{filepath}">
        <input class="form-control" id="photo-{id}-name" type="text" name="photo_names[]" value="{name}"
               style="width: 200px;" title="图片名称">
        <img id="photo-{id}-preview" src="{url}" style="height:36px;width: 36px;"
             onclick="imagePreviewDialog(this.src);">
        <a href="javascript:uploadOneImage('图片上传','#photo-{id}');">替换</a>
        <a href="javascript:(function(){$('#saved-image{id}').remove();})();">移除</a>
    </li>
</script>
<!--附件js-->
<script type="text/html" id="files-item-tpl">
    <li id="saved-file{id}">
        <input id="file-{id}" type="hidden" name="file_urls[]" value="{filepath}">
        <input class="form-control" id="file-{id}-name" type="text" name="file_names[]" value="{name}"
               style="width: 200px;" title="文件名称">
        <a id="file-{id}-preview" href="{preview_url}" target="_blank">下载</a>
        <a href="javascript:uploadOne('文件上传','#file-{id}','file');">替换</a>
        <a href="javascript:(function(){$('#saved-file{id}').remove();})();">移除</a>
    </li>
</script>
</head>
<body>
<div class="wrap js-check-wrap">
    <!--页面内导航-->
    <ul class="nav nav-tabs">
        <li><a href="{:url('AdminArticle/index')}">文章管理</a></li>
        <li>
            <a href="{:url('AdminArticle/add')}">添加文章</a>
        </li>
        <li class="active"><a href="#">编辑文章</a></li>
    </ul>

    <!--表单提交-->
    <form action="{:url('AdminArticle/editPost')}" method="post" class="form-horizontal js-ajax-form margin-top-20">
        <!--提交的表单字段-->
        <div class="form-group">
            <label class="col-sm-2 control-label"><span class="form-required">*</span>名称:</label>
            <div class="col-md-6 col-sm-10">
                <input type="text" class="form-control" name="name" value="{$post.name}">
            </div>
        </div>
        <!--提交的表单字段结束-->


        <div class="form-group">
            <label class="col-sm-2 control-label">缩略图</label>
            <div class="col-md-6 col-sm-10">
                <input type="hidden" name="post[more][thumbnail]" id="thumbnail"
                       value="{$post.more.thumbnail|default=''}">
                <a href="javascript:uploadOneImage('图片上传','#thumbnail');">
                    <if condition="empty($post.more.thumbnail)">
                        <img src="__TMPL__/public/assets/images/default-thumbnail.png"
                             id="thumbnail-preview"
                             width="135" style="cursor: pointer"/>
                        <else/>
                        <img src="{:cmf_get_image_preview_url($post.more.thumbnail)}"
                             id="thumbnail-preview"
                             width="135" style="cursor: pointer"/>
                    </if>
                </a>
                <input type="button" class="btn btn-sm btn-cancel-thumbnail" value="取消图片">
            </div>
        </div>

        <tr>
            <th>内容</th>
            <td>
                <script type="text/plain" id="content" name="post[post_content]">{$post.post_content}</script>
            </td>
        </tr>

        <tr>
            <th>相册</th>
            <td>
                <ul id="photos" class="pic-list list-unstyled form-inline">
                    <notempty name="post.more.photos">
                        <foreach name="post.more.photos" item="vo">
                            <php>$img_url=cmf_get_image_preview_url($vo['url']);</php>
                            <li id="saved-image{$key}">
                                <input id="photo-{$key}" type="hidden" name="photo_urls[]"
                                       value="{$vo.url}">
                                <input class="form-control" id="photo-{$key}-name" type="text"
                                       name="photo_names[]"
                                       value="{$vo.name|default=''}" style="width: 200px;" title="图片名称">
                                <img id="photo-{$key}-preview"
                                     src="{:cmf_get_image_preview_url($vo['url'])}"
                                     style="height:36px;width: 36px;"
                                     onclick="parent.imagePreviewDialog(this.src);">
                                <a href="javascript:uploadOneImage('图片上传','#photo-{$key}');">替换</a>
                                <a href="javascript:(function(){$('#saved-image{$key}').remove();})();">移除</a>
                            </li>
                        </foreach>
                    </notempty>
                </ul>
                <a href="javascript:uploadMultiImage('图片上传','#photos','photos-item-tpl');"
                   class="btn btn-sm btn-default">选择图片</a>
            </td>
        </tr>

        <tr>
            <th>附件</th>
            <td>
                <ul id="files" class="pic-list list-unstyled form-inline">
                    <notempty name="post.more.files">
                        <foreach name="post.more.files" item="vo">
                            <php>$file_url=cmf_get_file_download_url($vo['url']);</php>
                            <li id="saved-file{$key}">
                                <input id="file-{$key}" type="hidden" name="file_urls[]"
                                       value="{$vo.url}">
                                <input class="form-control" id="file-{$key}-name" type="text"
                                       name="file_names[]"
                                       value="{$vo.name}" style="width: 200px;" title="图片名称">
                                <a id="file-{$key}-preview" href="{$file_url}" target="_blank">下载</a>
                                <a href="javascript:uploadOne('文件上传','#file-{$key}','file');">替换</a>
                                <a href="javascript:(function(){$('#saved-file{$key}').remove();})();">移除</a>
                            </li>
                        </foreach>
                    </notempty>
                </ul>
                <a href="javascript:uploadMultiFile('附件上传','#files','files-item-tpl','file');"
                   class="btn btn-sm btn-default">选择文件</a>
            </td>
        </tr>

        <tr>
            <th>音频</th>
            <td class="form-inline">
                <input id="file-audio" class="form-control" type="text" name="post[more][audio]"
                       value="{$post.more.audio|default=''}" placeholder="请上传音频文件" style="width: 200px;">
                <notempty name="post.more.audio">
                    <a id="file-audio-preview" href="{:cmf_get_file_download_url($post.more.audio)}"
                       target="_blank">下载</a>
                </notempty>

                <a href="javascript:uploadOne('文件上传','#file-audio','audio');">上传</a>
            </td>
        </tr>

        <tr>
            <th>视频</th>
            <td class="form-inline">
                <input id="file-video" class="form-control" type="text" name="post[more][video]"
                       value="{$post.more.video|default=''}" placeholder="请上传视频文件" style="width: 200px;">
                <notempty name="post.more.video">
                    <a id="file-video-preview" href="{:cmf_get_file_download_url($post.more.video)}"
                       target="_blank">下载</a>
                </notempty>
                <a href="javascript:uploadOne('文件上传','#file-video','video');">上传</a>
            </td>
        </tr>



        <div class="col-sm-offset-2 col-sm-10">
            <button type="submit" class="btn btn-primary js-ajax-submit">{:lang("SAVE")}</button>
            <a class="btn btn-default" href="__URL__">返回</a>
        </div>
    </form>

</div>
<script type="text/javascript" src="__STATIC__/js/admin.js"></script>
<!--编辑器的js开始-->
<script type="text/javascript">
    //编辑器路径定义
    var editorURL = GV.WEB_ROOT;
</script>
<script type="text/javascript" src="__STATIC__/js/ueditor/ueditor.config.js"></script>
<script type="text/javascript" src="__STATIC__/js/ueditor/ueditor.all.min.js"></script>
<script type="text/javascript">
    $(function () {

        editorcontent = new baidu.editor.ui.Editor();
        editorcontent.render('content');
        try {
            editorcontent.sync();
        } catch (err) {
        }

        /*缩略图*/
        $('.btn-cancel-thumbnail').click(function () {
            $('#thumbnail-preview').attr('src', '__TMPL__/public/assets/images/default-thumbnail.png');
            $('#thumbnail').val('');
        });

    });
</script>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ThinkCMF后台页面模板demo 的相关文章

随机推荐

  • 关于NgRx的状态管理

    什么是NgRx 简单的讲 NgRx 是继 Redux 之后 结合 RxJs 的产物 可以说 它是 Angular 天生的 伴侣 帮助 Angular 做状态管理 NgRx 主要有三种模式 分别为 NgRx Store NgRx Effect
  • Android VLC播放器二次开发1——程序结构分析

    最近因为一个新项目需要一个多媒体播放器 所以需要做个视频 音频 图片方面的播放器 也查阅了不少这方面的资料 如果要从头做一个播放器工作量太大了 而且难度也很大 所以最后选择了VLC作为基础 进行二次开发 选择VLC的原因有两个 第一 VLC
  • 文件夹权限禁用和解除禁用

    1 文件夹权限禁用 右键文件夹 属性 安全 选择对应的用户 编辑 拒绝一栏打钩 确定 然后你会发现 文件夹对应的权限没有了 无法打开文件夹 无法重命名等 1 文件夹权限解除禁用 文件夹右键 属性 安全 高级 继续 删除禁用的用户
  • Altium Designer(AD)软件使用记录08-PCB布局部分

    目录 Altium Designer AD 软件使用记录08 PCB布局部分 一 交互是模块化抓取的设置 二 模块化及PCB 的预布局分析 三 核心最小系统 DSP SDRAM FLASH 及拓扑结构分析 四 基于CPLD 的模块布局 五
  • Day2 R (Rstudio) 的更新,R 中包的安装与更新

    1 R Rstudio 的更新与安装 R 的安装请参考官网 R的更新 Windows install packages installr require installr updateR Mac 安装devtools包 如果已经安装 跳过此
  • H5页面不同屏幕适配:纯CSS方案

    背景 UI给出的设计稿 一般是以iphone6屏幕大小为准 也就是宽高为375 667 激进一些的还会使用414 736的设计稿 在其他不同尺寸的屏幕上适配的问题也就由此诞生 一般新搭建的项目都要处理这个问题 常见方案 目前市面上比较常见的
  • Vue AES+MD5加密 后台解密

    前端VUE vue项目中安装crypto js npm install crypto js save dev CryptoJS crypto js 为 JavaScript 提供了各种各样的加密算法 目前已支持的算法包括 MD5 SHA 1
  • python打开网页被禁止_Python爬虫被禁?看看是不是这几个问题

    Python爬虫在网上完成网站的信息采集时 常常出现无缘无故的ip被禁的情况 正爬取呢就没法继续了 造成日常业务也没办法正常进行了 整个人都不好了呢 一部分人完全不清楚被禁的原因 这么简单的就给禁掉了 究竟是哪个地方不对呢 首先 和大家介绍
  • VS2013 curl源码编译(二)之zlib 1.2.11编译

    已编译好的资源 https download csdn net download key xiaodj 10825531 转载处 https blog csdn net jaggerjack330 article details 82721
  • Python Basics 笔记

    9 14 问题 gt gt gt s Python is Fun gt gt gt s 1 5 从1到第四 ytho gt gt gt s 5 从0到第四 Pytho gt gt gt s 1 从1到最后 ython is Fun gt g
  • 《计算机视觉中的多视图几何》笔记(0)

    为什么要做这个专栏 计算机视觉的一大研究目标是使计算机具有通过2D图像认知3D环境信息的能力 近年来 随着SLAM SfM MVS NeRF等技术的爆火和相关产业的蓬勃发展 越来越多的人加入到三维重建的领域当中 然而 如何入门3D视觉是一件
  • Java中关于char类型的变量为什么可以赋值为整型数字

    文章出处 链接 1 JAVA中 char占2字节 16位 可在存放汉字 2 char赋值 char a a 任意单个字符 加单引号 char a 中 任意单个中文字 加单引号 char a 111 整数 0 65535 十进制 八进制 十六
  • 5. Linux-riscv内存管理21-24问

    文章目录 2 5 在中断上下文中能不能调用包含GFP KERNEL分配掩码的内存分配函数 2 5 1 zone水位 2 5 2 GFP ATOMIC 2 5 3 在使用GPF KERNEL情况下 什么时候才睡眠 2 5 在中断上下文中能不能
  • 教你如何用两个栈实现一个队列

    一 实现思路 1 首先准备两个栈 栈A与栈B 2 栈A专门用来完成入队列操作 栈B专门用来出队列与取队首元素操作 3 每次入队列操作时 首先得判断B栈是否为空 不空则将B栈元素全都依次入A栈 最后继续入新元素 即将要入栈元素添加到栈A 4
  • c语言选择性编译

    在C语言中 可以使用条件编译指令来选择性地编译代码 条件编译是通过预处理器指令来控制代码的编译过程 根据指定的条件来决定是否编译其中的代码 条件编译指令有中预处理器指令 如果某个宏通过 define定义过了 则编译 ifdef内部的代码段
  • Android备忘录模式实现及源代码解析

    Android备忘录模式实现及源代码解析 备忘录模式是一种行为设计模式 它允许在不破坏封装性的前提下捕获对象的内部状态 并在需要时恢复 在Android开发中 备忘录模式可以用于保存和恢复应用程序的状态或数据 本文将介绍如何在Android
  • Docker 中 mysql问题解决

    1 Docker 中mysql问题 1 1 docker 中 安装mysql之后表明大小写不敏感 参考文章 mysql表名大小不敏感 1 1 1 进入mysql docker exec it dokcer中mysql容器名称 bash 下面
  • idea连接mysql设置时区

    当连接mysql时出现以下问题 那么到Advanced中设置时区为 Asia Shanghai 连接成功
  • 图像识别(四)

    大家好啊 我是董董灿 导读 图像识别 一 从像素说起 图像识别 二 图像的色彩空间 图像识别 三 初识卷积 上一篇文章 初识卷积 聊到了卷积这一算法 通俗点讲 卷积就是模仿的人眼识图的过程 以 感受野 的视角去扫描图片 从而获取不同区域的图
  • ThinkCMF后台页面模板demo

    index列表页面模板