该项目是基于Laravel5.4,然后根据多个【APP API + 后台管理CMS】类型的项目综合整理而出的快速打通API+CMS功能的开发模板。
目前已经成功上线的有电商、医疗、社交、在线教育等4个项目。
会持续更新,并补充Laravel5.5 + Vue的模板。
-
测试Server环境:
Apache 2.2 + MySQL 5.6 + PHP 5.6
CentOS安装教程 -
CMS已经部署好(需配置数据库和.env之后):
直接访问:localhost/cms
用户名:admin@admin.com
密码:123456 -
API文档已经部署好(需配置.env之后):
直接访问:localhost/doc
使用.env.example加入git管理,实际使用时复制.env.example文件并改名为.env:
# cp .env.example .env
注意:需自行增加APP_KEY和DB的IP/账号/密码
$ npm install
$ composer install
配置env文件的数据配置之后,执行以下几条:
php artisan migrate:install
php artisan migrate
php artisan db:seed
routes下api对应的是接口,web对应的是cms。
分三个目录: Api(APP用户管理等)、Business(业务模块)、Cms(内容管理系统相关)
3.1 API控制器目录:../app/Api/Controllers/
API文档文件:../app/Api/Controllers/ApiDoc.php
访问以下链接即可:
localhost/api
在以下中间件中的都是需要token授权访问的内容:
/**
* Token Auth
*/
$api->group(['middleware' => 'jwt.auth'], function ($api) {
}
api授权接口访问示例(通过login接口获取token):
localhost/v1/info/all-type?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI
3.2 验证控制器目录: ../app/Http/Controllers/Auth/
3.3 CMS控制器目录: ../app/Http/Controllers/Backend/
3.4 业务控制器目录: ../app/Http/Controllers/Business/
CMS业务管理目录:../resources/views/
自定义迁移部分:
../database/migrations/2017_06_14_100454_create_menus_table.php
../database/migrations/2017_06_14_134742_entrust_setup_tables.php
填充部分:
../database/seeds/DatabaseSeeder.php
../app/Api/Helper/
../app/Http/Helper/
实例文件:../app/Http/Requests/Form/MenuForm.php
用法:
use App\Http\Requests\Form\MenuForm;
public function store(MenuForm $request)
{
//能进入到此函数体的,都已经被MenuForm的Requests过滤了
/**
Laravel文档:
http://d.laravel-china.org/docs/5.4/validation
*/
}
// TODO。
../app/Http/Middleware/JwtAuthModel.php
该中间件为自定义,用来给API导航用哪张用户表。
../resources/views/layouts/comment.blade.php