toshim45 / laravel-reverse-mysql
从MySQL表生成CRUD
v0.3.1
2021-07-22 01:04 UTC
Requires
- php: >=7.0.0
- laravel/framework: >=5.6.0
- laravelcollective/html: >=5.6.0
README
laravel软件包,基本上是将MySQL中的字段反向到控制器和视图中,就像CRUD生成器一样,但使用您的主题,只需提供占位符即可。
为什么?
- 需要自定义主题,我们只提供简单的HTML占位符,按需编辑。
- 生成后需要大量额外的代码
- 需要一个简单地读取数据库字段的生成器
- 没有代码膨胀,没有辅助文件,只有您的模型、控制器和CRUD模板
不要使用这个
- 如果您需要包含迁移的生成器,因为这个生成器是从MySQL反向生成代码的
- 如果您只需要CRUD而无需额外的代码
- 如果您不关心提供的主题
要求
- Laravel 5.* 或 6.* 或 8.*
- Laravel Collective
- 您的表必须包含id和时间戳
安装
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文件夹中
- jeroennoten-adminlte占位符,在生成CRUD之前安装jeroennoten-adminlte软件包
注意
- 在OSX上测试过,需要其他操作系统上的帮助
- 在laravel 5.6、5.8、6.*、8.上测试过,需要7(我认为不会支持4.*)的帮助
- 对于代码格式化
我正在格式化生成的代码,但到目前为止您可以使用您的IDE,已经尝试了一些代码格式化器,它们中的大多数都在您的vendor文件夹中安装了二进制文件,我认为这是不合适的,所以请只使用您的IDE格式化器 - 只支持mysql
待办事项(需要帮助)
- laravel 7
- form.stub,您将能够自定义输入类型字段类
- 你有什么想法吗?