进入官网  Dcat Admin - Php后台开发框架

这里要选择1.x

下面来安装框架

安装完laravel之后,需要修改.env文件,设置数据库链接设置正确

安装 dcat-admin

composer require dcat/laravel-admin

然后运行下面的命令来发布资源:

php artisan admin:publish

然后运行下面的命令完成安装:

php artisan admin:install

这里需要注意的是

{tip} 执行这一步命令可能会报以下错误 Specified key was too long ... 767 bytes,如果出现这个报错,请在 app/Providers/AppServiceProvider.php 文件的 boot 方法中加上代码 \Schema::defaultStringLength(191);,然后删除掉数据库中的所有数据表,再重新运行一遍 php artisan admin:install 命令即可。

给该框架配置一个域名

在laravel7.x的官方文档中找到优雅链接,并粘贴到public目录下的.htaccess文件里面

Options +FollowSymLinks -Indexes
RewriteEngine On RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

在网站上访问www.wenjian.com/admin

此时已经进入

更改config目录下面的app.php里面的配置文件,使的框架变成中文

账号密码都是admin,点击登录,便可以进入

  

打开系统里的菜单,创建一个商品管理

此时左侧便有一个商品管理

不过,这个是一个空的页面

下面创建一个表格,在开发工具下面的代码生成器里面创建一个goods表,注意,标注的地方全选住

  

此时,我们数据库里面便新增了一个goods表格

 这时,项目里面新增一个GoodsController.php的控制器,我们看一下菜单,商品管理后面的路径

我们找到路由,新增一条

$router->resource('goods', 'GoodController');

此时,便可以访问到商品管理里面

 我们也可以做一下增删改查了

点击添加,这时,我们并没有办法上传图片

 我们更改一下GoodsController.php控制器里面的文件

 

再回到页面刷新一下,此时,便可以对图片进行上传

添加后,发现图片在页面上不显示

打开config/filesystems.php文件,在disks内增加以下代码

'admin' => [
'driver' => 'local',
'root' => public_path('uploads'),
'visibility' => 'public',
'url' => env('APP_URL').'/uploads',
],

接着找到config/admin.php文件里的在221行左右,有一个upload,里面disk指向换成admin 

'disk' => 'admin',

注意,在.env配置文件里,这里要改成自己的域名

我们返回到页面,重新添加一条数据,这时,便可以展示出来

下面是多文件上传展示

找到GoodsController.php控制器,最上面的

$grid->column('goods_image')->image();

注释掉,换成以下代码

 // 显示多图
$grid->goods_image()->display(function ($pictures) { return json_decode($pictures, true); })->image('', 100, 100);

 接着找到protected function form里的  

$form->image('goods_image');

注释掉,换成以下代码

// 转化为json格式保存到数据库
$form->multipleImage('goods_image')->saving(function ($paths) {
// 可以转化为由 , 隔开的字符串格式
// return implode(',', $paths); // 也可以转化为json
return json_encode($paths);
});

  返回到页面,重新添加两张以上的图片

此时,可以上传成功,并且展示出来

接下来是云端上传,这里使用的是七牛云

首先需要在终端安装云上传的包

composer require zgldh/qiniu-laravel-storage:0.10.3

  

打开自己的七牛云,把鼠标放到上面,这时,有那个黑框里的一个链接,复制黑框里的链接

将刚才复制的网址复制到这里来

和本地上传一样,在filesystems.php文件admin下面添加一下代码,里面的内容按自己的七牛云的配置写,注意,七牛云创桶的时候,把权限设置为公有,不然图片在展示的时候咩有权限,无法正常显示到页面

再回到config/admin.php目录下面,将原本的admin改为qiniu

到页面上刷新,并添加数据

这时,文件已经成功上传到七牛云上,并且也可以成功的在页面上展示

Dcat admin 多文件上传,七牛云云端上传的更多相关文章

  1. 使用python3.7+Vue.js2.0+Django2.0.4异步前端通过api上传文件到七牛云云端存储

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_130 之前一篇文章是通过普通js+tornado来上传七牛云:使用Tornado配合七牛云存储api来异步切分上传文件,本次使用v ...

  2. 七牛云覆盖上传 php

    使用七牛云过程中遇到了需要上传覆盖的情况,最终解决,分享给大家. 七牛云sdk上传示例中是这样写的 <?php require_once 'path_to_sdk/vendor/autoload ...

  3. angular封装七牛云图片上传,解决同一页面多个上传按钮分别上传

    step1:引入文件 引入Plupload *该SDK上传功能集于Plupload插件封装,所以需要下载Plupload; plupload.dev.js 引入qiniu.js为了简便,当时直接从官网 ...

  4. 图床工具PicGO实现七牛云图片上传

    图床工具PicGO实现七牛云图片上传 我们在写博客或者网络文章时经常需要上传图片.目前最有名气的图床工具就是PicGO. 简单的界面,完整的功能,在相册里也能直接复制markdown图片链接.一直深受 ...

  5. 根据短链生成二维码并上传七牛云(Java)

    通过短链生成二维码并上传七牛云(Java) 前言 网上这种帖子其实也是很多,大部分搜出来的是CSDN的,然后点进去一看都几乎一样:所以这次给个自己实践的例子记录. 这次也是通过搜索得到的一部分能实现这 ...

  6. 利用ThinkPHP自带的七牛云驱动上传文件到七牛云以及删除七牛云文件方法

    一.准备工作 1.注册七牛云账号 2.选择对象储存->创建空间->设置为公开 3.在config配置文件中添加以下代码 'UPLOAD_FILE_QINIU' => array ( ...

  7. C#使用七牛云存储上传下载文件、自定义回调

    项目需要将音视频文件上传服务器,考虑并发要求高,通过七牛来实现. 做了一个简易的压力测试,同时上传多个文件,七牛自己应该有队列处理并发请求,我无论同时提交多少个文件,七牛是批量一个个排队处理了. 一个 ...

  8. python 读取mysql存储的文件路径下载文件,内容解析,上传七牛云,内容入es

    #!/usr/bin/env python # -*- coding: utf-8 -*- import ConfigParser import json import os import re fr ...

  9. tp5.0整合七牛云图片上传

    转:https://www.cnblogs.com/adobe-lin/p/7699638.html 这里以上传图片为例 上传其他文件也是大同小异 使用composer安装gmars/tp5-qini ...

  10. 七牛云存储上传自有证书开启https访问

    虽然七牛云存储也提供免费SSL证书申请,但我就喜欢用其他平台申请的,于是在腾讯云申请了免费SSL证书,正准备在七牛上传,弹出的界面却让我傻了眼,如下图所示: 腾讯免费SSL证书提供了不同服务器环境的版 ...

随机推荐

  1. Oracle数据库简单常用语句

    简单常用语句: 登录超级用户 sqlplus / as sysdba; 登录普通用户 connect username/password; 显示当前用户名 show user; 查询所有用户名 sel ...

  2. pg 窗口函数

    窗口函数基于结果集进行计算,将计算出的结果合并到输出的结果集上,并返回多行.使用窗口函数能大幅度简化SQL代码.gaussdb提供内置的窗口函数,例如row_num().rank().lag()等,除 ...

  3. JWT & 用户身份认证演变过程

    一.起源 0.HTTP无状态 HTTP是无状态的,服务端和客户端如何保持登录状态? 工程师在服务端搞了亿点事情, 就有了下面的解决方案. 1.session认证 (1)什么是session? 服务器为 ...

  4. Docker部署网心云-挣点电费

    网心云 是CDN业务的一种,容器魔方 是网心云的容器安装产品,其安装也很简单. 1.启动容器--一行命令 docker run -d --name watchtower --restart alway ...

  5. [2009年NOIP普及组] 分数线划定

    世博会志愿者的选拔工作正在A市如火如荼的进行.为了选拔最合适的人才,A市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试.面试分数线根据计划录取人数的150%划定,即如果计划录取m ...

  6. flume 拦截器

    目的:功能1:判断json文件,如何格式合格则正常传输,否则就不传输 功能2:判断出合格的json文件,并且key值中包含"date"才进行传输 一.创建一个Json的工具类 pa ...

  7. Python基础数据类型-Number(数字)

    a = -1 # int b = 2.0 # float c = 13.11 # float d = 3.14j # complex print(type(a), type(b), type(c), ...

  8. matlab读写文件

    dsp,fpga这些产生的文件大部分都是二进制存储的,知道格式后可以直接读取. 读取后的"可懂"数据如何以"可懂"的形式保存在.dat,.txt,.csv之类文 ...

  9. [api自动化]快速导出接口到jmeter脚本

    [场景]在项目做接口自动化的时候,大家一般找接口文档或者其他接口资料,逐一编写脚本.这样效率低,且容易由于文档未更新导致接口调试不通 [解决方案]页面上操作对应功能,直接捕获用到的接口,导出到jmet ...

  10. 【转】Thunderbird 设置转移

    此文章可能已经过时. 此文章的原文版本已经做出了重大更动.在此页面更新前,您可能也会觉得这个有用:Profiles - Where Thunderbird stores your messages a ...