定制 songyz/laravel-simple-orm-curd 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

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方式,您可以修改请求方式,get any 等方式。

  • 2、生成模块 带有参数 --force

    默认文件存在,会提示是否被覆盖,添加上--force 参数后将自动覆盖,请谨慎选择。

  • 3、生成指定的文件,使用 --only 指定。--only 允许的类型是:controllermanagerservicemodelroute 其他格式不被允许

    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 我们能提供哪些服务?
定制开发 / 二次开发

基于 songyz/laravel-simple-orm-curd 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 3.09k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 4
  • 点击次数: 8
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2020-05-19