安装

环境

  • PHP >= 7.1
  • Laravel 5.5.0 ~ 9.*
  • Fileinfo PHP Extension

开始安装

{tip} 如果安装过程中出现composer下载过慢或安装失败的情况,请运行命令composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/composer镜像更换为阿里云镜像。

首先需要安装laravel,如已安装可以跳过此步骤

  1. composer create-project --prefer-dist laravel/laravel 项目名称 7.*
  2. # 或
  3. composer create-project --prefer-dist laravel/laravel 项目名称

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

  1. DB_CONNECTION=mysql
  2. DB_HOST=127.0.0.1
  3. DB_PORT=3306
  4. DB_DATABASE=dcat-admin
  5. DB_USERNAME=root
  6. DB_PASSWORD=

安装dcat-admin

  1. cd {项目名称}
  2. composer require dcat/laravel-admin:"2.*" -vvv

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

  1. php artisan admin:publish

在该命令会生成配置文件config/admin.php,可以在里面修改安装的地址、数据库连接、以及表名,建议都是用默认配置不修改。

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

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

  1. php artisan admin:install

上述步骤操作完成之后就可以配置web服务了,注意需要把web目录指向public目录!如果用的是nginx,还需要在配置中加上伪静态配置

  1. location / {
  2. try_files $uri $uri/ /index.php?$query_string;
  3. }

启动服务后,在浏览器打开 http://localhost/admin,使用用户名 admin 和密码 admin登陆。

生成的文件

安装完成之后,会在项目目录中生成以下的文件:

配置文件

安装完成之后,dcat-admin所有的配置都在config/admin.php文件中。

后台项目文件

安装完成之后,后台的安装目录为app/Admin,之后大部分的后台开发编码工作都是在这个目录下进行。

  1. app/Admin
  2. ├── Controllers
  3. ├── AuthController.php
  4. └── HomeController.php
  5. ├── Metrics
  6. └── Examples
  7. ├── NewDevices.php
  8. ├── NewUsers.php
  9. ├── ProductOrders.php
  10. ├── Sessions.php
  11. ├── Tickets.php
  12. └── TotalUsers.php
  13. ├── bootstrap.php
  14. └── routes.php
  1. app/Admin/routes.php文件用来配置后台路由。
  2. app/Admin/bootstrap.phpdcat-admin的启动文件, 使用方法请参考文件里面的注释.
  3. app/Admin/Controllers目录用来存放后台控制器文件,该目录下的HomeController.php文件是后台首页的显示控制器,AuthController.php为后台管理员登录鉴权控制器。
  4. app/Admin/Metrics/Examples里面存放的是数据统计卡片(Metric Card)的示例代码.

静态文件

后台所需的前端静态文件在/public/vendor/dcat-admin目录下。

数据表迁移文件

对应的数据表迁移文件在/database/migrations目录下。

语言包

语言包文件在/resources/lang目录下。