songyz/laravel-simple-orm-curd
Composer 安装命令:
composer require songyz/laravel-simple-orm-curd
包简介
简单、实用、接口生成、curd
README 文档
README
简单、实用、curd接口生成、脚手架
1、引入composer
composer require songyz/laravel-simple-orm-curd
2、加载服务
-
Laravel
打开
config/app.php文件,找到providers数组中添加以下代码Songyz\Simple\Orm\Providers\ScaffoldConfigPublishProvider::class
-
Lumen
打开
bootstrap/app.php,添加$app->register(Songyz\Simple\Orm\Providers\ScaffoldConfigPublishProvider::class);
3、加载配置文件
-
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', //更新时自动更新的时间 ];
4、使用命令创建模块
-
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方式,您可以修改请求方式,
getany等方式。 -
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注:删除不可恢复、删除时不会清除路由,请手动删除
5、curd接口测试
-
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、其他帮助文档,请移步 ....
songyz/laravel-simple-orm-curd 适用场景与选型建议
songyz/laravel-simple-orm-curd 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 3.09k 次下载、GitHub Stars 达 2, 最近一次更新时间为 2020 年 05 月 19 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「orm」 「generator」 「api」 「test」 「request」 「crud」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 songyz/laravel-simple-orm-curd 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 songyz/laravel-simple-orm-curd 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 songyz/laravel-simple-orm-curd 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Memio's PrettyPrinter, used to generate PHP code from given Model
Kinikit - PHP Application development framework MVC component
PHP Database ORM for Symfony1. Do NOT use for new projects: please move to a newest Symfony release and Doctrine2
A PSR-7 compatible library for making CRUD API endpoints
PeskyORM - annoying ORM that contains tons of exceptions and throws them when anything goes wrong
An ORM solution for Salesforce Object Query Language (SOQL)
统计信息
- 总下载量: 3.09k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 4
- 点击次数: 8
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2020-05-19