Download the PHP package charsen/laravel-scaffold without Composer
On this page you can find all versions of the php package charsen/laravel-scaffold. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download charsen/laravel-scaffold
More information about charsen/laravel-scaffold
Files in charsen/laravel-scaffold
Package laravel-scaffold
Short Description For this package there is no description available.
License
Informations about the package laravel-scaffold
Laravel Scaffold
Dev Installing
Intro
“约定大于配置” 、“以机械化代替手工化作业”
支持多语言,默认 {en, zh-CN}
待补充... (可先按下面流程操作体验)
create new laravel
修改配置 .env
- 开发域名
- 数据库配置 (需要手动先创建数据库)
通过 composer 安装
通过命令行看是否安装成功 Scaffold
看到结果中有 scaffold , moo:api ... 等就是已经安装成功
初始化开发者信息(自己)及初始化目录
发布配置文件 及 前端公共资源包
- 将会发布
scaffold.php到config目录下.
创建一个模块的 schema 文件
- 添加
-f覆盖已存在文件 - PS1: 暂不支持多级目录!建议:
module_name = schema_file_name - PS2:
controller的定义,只支持app/Http/Controllers/往下 两级,更深的层级 不支持!!!
将会生成 schema 文件 + ./scaffold/database/<module_name>.yaml
设计模块下的数据表,- 具体说明详见 demo:
创建数据迁移文件
schema_file_name非必写,若不写会有提示做选择- 添加
-m会执行php artisan migrate - 添加
--fresh刷新缓存数据,会先执行artisan moo:fresh
创建模型文件
前置动作:再 DataBaseSeeder.php 中加入 //:auto_insert_code_here::do_not_delete ,一遍生成代码时
schema_file_name非必写,若不写会有提示做选择- 默认生成 Trait 文件
- 添加
-f覆盖已存在文件 model 和 factory 文件 - 添加
-F生成对应的factory文件,并更新到database/seeds/DatabaseSeeder.php
设置 cors 跨域设置
修改 config/cors.php 加入 后台路径
路由设置
注册新方法 iResource
添加 route 的 iResource 方法,于 app/Providers/RouteServiceProvider.php 文件中:
配置 admin 路由对应的中件间
在 app/Http/Kernel.php 中添加
注册 admin 路由配置文件
于 app/Providers/RouteServiceProvider.php 文件中,添加:
创建控制器
基础控制器支持自定义,可修改 config/scaffold.php 中的配置;
schema_file_name非必写,若不写会有提示做选择- 添加
-f覆盖已存在文件(Request 文件不会被覆盖,需要手动删除) - 同时会生成对应的
From Request对象于app/Http/Requests/路径下(目录层次与Controller的一致) - 如果之前已经有 trait 文件了,并且存在 controller 文件,则不再生成 request 文件,避免删除了又重新生成
-
!!! PS: !!!
controller里的action是生成接口文档及调试的依据,one action = one api- 请先 认真 设置
From Request里的验证规则,因为类里的验证规则是生成api及表单控件时的数据来源
执行命令生成接口对应的配置文件
生成接口测试 yaml 文件,后续调整 controller 时,若有删减会提示需要手动去掉 yaml 中对应的 action ,若有增加则会自动追加到 yaml 文件。
namesapce非必写,若不写会有提示做选择(app/controllers下的某个目录,或多级目录)- 添加
-f覆盖已存在文件 - 添加
-i忽略用controller里的actions求交集 (见下方 PS2) - 添加
--fresh刷新缓存数据,会先执行artisan moo:fresh
PS1:
- api 里的参数 默认通过
From Request对象验证规则里读取 - 默认的接口名称通过
"反射"控制器中动作的注释来获取
PS2:
- 要先设置好路由规则,程序通过
Route::getRoutes()获取接口地址(但由于用了Route::resources,实际action可能没那么多) - 用路由与控制器的
actions求交集,得出真实的接口 - 生成时:默认附加新的
action到对应的接口yaml文件, - 生成时:若有
action被删减会提醒,需要手工删除接口yaml文件中的代码
更新 i18n 文件
- 添加
--fresh刷新缓存数据,会先执行artisan moo:fresh - 目前支持
英文、中文两个语种 - 可先润色
scaffold/database/_fields.yaml里的内容,此文件会自动根据数据表的字段,添加或删掉项目