Downloads
Stars
Version
简单、实用、curd接口生成、脚手架
composer require songyz/laravel-simple-orm-curd
Laravel
打开config/app.php
文件,找到 providers
数组中添加以下代码
Songyz\Simple\Orm\Providers\ScaffoldConfigPublishProvider::class
Lumen
打开 bootstrap/app.php
,添加
$app->register(Songyz\Simple\Orm\Providers\ScaffoldConfigPublishProvider::class);
Laravel
php artisan vendor:publish --provider="Songyz\Simple\Orm\Providers\ScaffoldConfigPublishProvider"
Lumen
复制 \vendor\songyz\laravel-simple-orm-curd\src\config\songyz_scaffold.php
文件,放在config
目录下。
songyz_scaffold.php
文件,具体信息如下:
return [
'default_page' => '', //orm默认使用的分类
'controller_path' => base_path('app' . DIRECTORY_SEPARATOR . 'Http' . DIRECTORY_SEPARATOR . 'Controllers'), //controller存放位置
'manager_path' => base_path('app' . DIRECTORY_SEPARATOR . 'Managers'), //manager存放位置
'service_path' => base_path('app' . DIRECTORY_SEPARATOR . 'Services'), //service 存放位置
'model_path' => base_path('app' . DIRECTORY_SEPARATOR . 'Models'), //model 存放位置
'route_file' => base_path('routes' . DIRECTORY_SEPARATOR . 'api.php'), //生成curd路由存放位置
'model_create_at'=>'created_at', //创建自动插入当前时间字段
'model_updated_at'=>'updated_at', //更新时自动更新的时间
];
1、生成模块
E:\phpStudy\WWW\laravel-test>php artisan songyz:scaffold
请输入要生成的类名: []:
> Goods
要生成的类名是:Goods
请简单描述-只支持英文: []:
> shop
描述信息信息是:shop
请输入Model关联的连接 Connection: []:
>
connection:mysql
请输入类对应的表名(可以为空): []:
>
Model关联的表是:goods
E:\phpStudy\WWW\laravel-test\app\Http\Controllers\GoodsController.php 文件创建成功2478
E:\phpStudy\WWW\laravel-test\app\Models\GoodsModel.php 文件创建成功300
E:\phpStudy\WWW\laravel-test\app\Managers\GoodsManager.php 文件创建成功335
E:\phpStudy\WWW\laravel-test\app\Services\GoodsService.php 文件创建成功400
api.php 自动生成路由,
Route::post('goods/getList', 'GoodsController@getList');
Route::post('goods/del', 'GoodsController@del');
Route::post('goods/add', 'GoodsController@add');
Route::post('goods/update', 'GoodsController@update');
Route::post('goods/getOne', 'GoodsController@getOne');
生成的路由,未采用restFull模式,为了简化、方便,所以采用全是post方式,您可以修改请求方式,get
any
等方式。
2、生成模块 带有参数 --force
默认文件存在,会提示是否被覆盖,添加上--force
参数后将自动覆盖,请谨慎选择。
3、生成指定的文件,使用 --only
指定。--only
允许的类型是:controller
、manager
、service
、model
、route
其他格式不被允许
php artisan songyz:scaffold --only=services --module=Goods
如果文件存在,会提示是否覆盖文件。
4、删除模块
php artisan songyz:scaffold --del_module=Goods
注:删除不可恢复、删除时不会清除路由,请手动删除
1、新增接口 /api/goods/add
返回结果
{"code":"0","message":"成功","data":{"id":1}}
2、列表查询接口 /api/goods/getList
{"code":"0","message":"成功","data":{"pageNumber":1,"pageSize":10,"totalPages":1,"totalCount":1,"results":[{"id":1,"title":"苹果手机6 plus","nav":1,"createdAt":"2020-05-19 16:09:34","deletedAt":"","updatedAt":"2020-05-19 16:10:42"}]}}
3、更新接口 /api/goods/update
{"code":"0","message":"成功","data":{"id":"1"}}
4、查询单个数据/api/goods/getOne
{"code":"0","message":"成功","data":{"id":1,"title":"苹果手机6 plus 加强版","nav":1,"createdAt":"2020-05-19 16:09:34","deletedAt":"","updatedAt":"2020-05-19 16:10:42"}}
5、删除 /api/goods/del
{"code":"0","message":"成功","data":{"id":"1"}}
以上方法均为post请求。
6、其他帮助文档,请移步 ....