toshim45/laravel-reverse-mysql

从MySQL表生成CRUD

v0.3.1 2021-07-22 01:04 UTC

This package is auto-updated.

Last update: 2024-09-29 05:35:52 UTC


README

laravel软件包,基本上是将MySQL中的字段反向到控制器和视图中,就像CRUD生成器一样,但使用您的主题,只需提供占位符即可。

为什么?

  • 需要自定义主题,我们只提供简单的HTML占位符,按需编辑。
  • 生成后需要大量额外的代码
  • 需要一个简单地读取数据库字段的生成器
  • 没有代码膨胀,没有辅助文件,只有您的模型、控制器和CRUD模板

不要使用这个

  • 如果您需要包含迁移的生成器,因为这个生成器是从MySQL反向生成代码的
  • 如果您只需要CRUD而无需额外的代码
  • 如果您不关心提供的主题

要求

安装

composer require toshim45/laravel-reverse-mysql

然后发布stubs

php artisan vendor:publish --provider="Toshim45\LaravelReverseMysql\ServiceProvider" --tag=stubs-bootstrap5

您的stubs将放置在resources文件夹中,按需编辑,提供了简单的stubs,对于最简单的占位符,使用--tag=stubs,有关其他占位符,请参阅下面的示例占位符。

在您向新模型和控制器添加一些代码之前,进行所有生成

如何使用

基本用法

  • 使用php artisan make:model {ModelName} -mcr选项生成模型,确保您的模型名称是单数 PascalCase
  • 运行php artisan reverse:mysql {table-name} -c -r,表名通常是复数 snake_case
  • --hard-reset选项可替换所有相关MVC文件,如有需要请使用
  • 运行phpfmt或其他php格式化器
  • 将此资源添加到路由
    • 对于laravel 8,请调整导入

自定义占位符

  • 使用php artisan make:model {ModelName} -mcr选项生成模型,确保您的模型名称是单数 PascalCase
  • 更新resources/stubs中的内容,保留{{tableName}}{{tableUrlName}}{{tableContent}}变量,这些变量由此生成器使用,变量{{tableFilter}}将创建带有等于查询的过滤器,您可以在模型类中更改查询。
  • 运行php artisan reverse:mysql {table_name} -c -r,表名通常是复数 snake_case
  • 运行phpfmt或其他php格式化器
  • 将此资源添加到路由
    • 对于laravel 8,请调整导入

保留变量

  • tableName
  • tableUrlName
  • tableContent
  • tableTitle
  • tableTotal

占位符示例

请检查github 示例并将这些文件夹的内容从其中之一复制粘贴到资源/stubs文件夹中

注意

  • 在OSX上测试过,需要其他操作系统上的帮助
  • 在laravel 5.6、5.8、6.*、8.上测试过,需要7(我认为不会支持4.*)的帮助
  • 对于代码格式化 我正在格式化生成的代码,但到目前为止您可以使用您的IDE,已经尝试了一些代码格式化器,它们中的大多数都在您的vendor文件夹中安装了二进制文件,我认为这是不合适的,所以请只使用您的IDE格式化器
  • 只支持mysql

待办事项(需要帮助)

  • laravel 7
  • form.stub,您将能够自定义输入类型字段类
  • 你有什么想法吗?